diff mbox

NFS does not work on linux-next 20140331

Message ID 20140331164301.GA24150@order.stressinduktion.org
State RFC, archived
Delegated to: David Miller
Headers show

Commit Message

Hannes Frederic Sowa March 31, 2014, 4:43 p.m. UTC
On Mon, Mar 31, 2014 at 01:35:48PM -0300, Fabio Estevam wrote:
> Hi Eric,
> 
> On Mon, Mar 31, 2014 at 1:29 PM, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> 
> > Hi Fabio
> >
> > Could you try the following patch ?
> >
> > diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c
> > index e1e47350784b..74a774af8265 100644
> > --- a/net/ipv6/mcast.c
> > +++ b/net/ipv6/mcast.c
> > @@ -1588,7 +1588,7 @@ static void mld_sendpack(struct sk_buff *skb)
> >
> >         rcu_read_lock();
> >         idev = __in6_dev_get(skb->dev);
> > -       IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUT, skb->len);
> > +       IP6_UPD_PO_STATS_BH(net, idev, IPSTATS_MIB_OUT, skb->len);
> 
> Thanks for the suggestion, but still get the same problem.

Would you be able to quickly test this one?


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Fabio Estevam March 31, 2014, 4:50 p.m. UTC | #1
On Mon, Mar 31, 2014 at 1:43 PM, Hannes Frederic Sowa
<hannes@stressinduktion.org> wrote:

> Would you be able to quickly test this one?
>
> diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c
> index e1e4735..08b367c 100644
> --- a/net/ipv6/mcast.c
> +++ b/net/ipv6/mcast.c
> @@ -1620,11 +1620,12 @@ static void mld_sendpack(struct sk_buff *skb)
>                       dst_output);
>  out:
>         if (!err) {
> -               ICMP6MSGOUT_INC_STATS_BH(net, idev, ICMPV6_MLD2_REPORT);
> -               ICMP6_INC_STATS_BH(net, idev, ICMP6_MIB_OUTMSGS);
> -               IP6_UPD_PO_STATS_BH(net, idev, IPSTATS_MIB_OUTMCAST, payload_len);
> -       } else
> -               IP6_INC_STATS_BH(net, idev, IPSTATS_MIB_OUTDISCARDS);
> +               ICMP6MSGOUT_INC_STATS(net, idev, ICMPV6_MLD2_REPORT);
> +               ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS);
> +               IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, payload_len);
> +       } else {
> +               IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS);
> +       }

Thanks, Hannes. This makes NFS-mount to work fine again:

Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Hannes Frederic Sowa March 31, 2014, 4:54 p.m. UTC | #2
On Mon, Mar 31, 2014 at 01:50:58PM -0300, Fabio Estevam wrote:
> On Mon, Mar 31, 2014 at 1:43 PM, Hannes Frederic Sowa
> <hannes@stressinduktion.org> wrote:
> 
> > Would you be able to quickly test this one?
> >
> > diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c
> > index e1e4735..08b367c 100644
> > --- a/net/ipv6/mcast.c
> > +++ b/net/ipv6/mcast.c
> > @@ -1620,11 +1620,12 @@ static void mld_sendpack(struct sk_buff *skb)
> >                       dst_output);
> >  out:
> >         if (!err) {
> > -               ICMP6MSGOUT_INC_STATS_BH(net, idev, ICMPV6_MLD2_REPORT);
> > -               ICMP6_INC_STATS_BH(net, idev, ICMP6_MIB_OUTMSGS);
> > -               IP6_UPD_PO_STATS_BH(net, idev, IPSTATS_MIB_OUTMCAST, payload_len);
> > -       } else
> > -               IP6_INC_STATS_BH(net, idev, IPSTATS_MIB_OUTDISCARDS);
> > +               ICMP6MSGOUT_INC_STATS(net, idev, ICMPV6_MLD2_REPORT);
> > +               ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS);
> > +               IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, payload_len);
> > +       } else {
> > +               IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS);
> > +       }
> 
> Thanks, Hannes. This makes NFS-mount to work fine again:
> 
> Tested-by: Fabio Estevam <fabio.estevam@freescale.com>

Thanks, Fabio!

Eric, do you mind if I take over, I'll audit the rest of the stack
regarding this change, too.

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Eric Dumazet March 31, 2014, 5:41 p.m. UTC | #3
On Mon, 2014-03-31 at 18:54 +0200, Hannes Frederic Sowa wrote:

> Eric, do you mind if I take over, I'll audit the rest of the stack
> regarding this change, too.

I do not mind at all ;)


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c
index e1e4735..08b367c 100644
--- a/net/ipv6/mcast.c
+++ b/net/ipv6/mcast.c
@@ -1620,11 +1620,12 @@  static void mld_sendpack(struct sk_buff *skb)
 		      dst_output);
 out:
 	if (!err) {
-		ICMP6MSGOUT_INC_STATS_BH(net, idev, ICMPV6_MLD2_REPORT);
-		ICMP6_INC_STATS_BH(net, idev, ICMP6_MIB_OUTMSGS);
-		IP6_UPD_PO_STATS_BH(net, idev, IPSTATS_MIB_OUTMCAST, payload_len);
-	} else
-		IP6_INC_STATS_BH(net, idev, IPSTATS_MIB_OUTDISCARDS);
+		ICMP6MSGOUT_INC_STATS(net, idev, ICMPV6_MLD2_REPORT);
+		ICMP6_INC_STATS(net, idev, ICMP6_MIB_OUTMSGS);
+		IP6_UPD_PO_STATS(net, idev, IPSTATS_MIB_OUTMCAST, payload_len);
+	} else {
+		IP6_INC_STATS(net, idev, IPSTATS_MIB_OUTDISCARDS);
+	}
 
 	rcu_read_unlock();
 	return;