From patchwork Mon Mar 31 16:47:13 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Dumazet X-Patchwork-Id: 335499 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id A26D61400AF for ; Tue, 1 Apr 2014 03:47:27 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753292AbaCaQrU (ORCPT ); Mon, 31 Mar 2014 12:47:20 -0400 Received: from mail-pd0-f181.google.com ([209.85.192.181]:44217 "EHLO mail-pd0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752602AbaCaQrP (ORCPT ); Mon, 31 Mar 2014 12:47:15 -0400 Received: by mail-pd0-f181.google.com with SMTP id p10so8208199pdj.12 for ; Mon, 31 Mar 2014 09:47:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:subject:from:to:cc:date:in-reply-to:references :content-type:content-transfer-encoding:mime-version; bh=1i6hzjldzI/ZO9JJQbo2IJyoJvhr3KDamtdPbuAe2gU=; b=WZsVpQSs8hoir7neQZMMZwNwtOucDtJL4NATV4+C43FdX56EWbUK1hgBUB944jWQ4M GrhYUIHbPbuOipi3RnhhqBv7ojTvtl+alSQmES/qFrINwc89tWbbvA3gRsvbWiMcq8SW Qu87sWZjuzRkgU7Gemnj0n8YaPZdluBjZdmIRRXg2WVoLmvyPduJQbaP3JRZLkpltUid 7zanzXIYbV6eqf6aWU4kP+qia63LtbM0drEvuSw64Lt8PaCrLRJZwxSdk2fNHqt0H22q hvGjcc7RcjoibUiloAaYqaj1gx4e/kUuXdLKe3Muy9m/ElxrTxpkn60es2q+s5YNVqiQ qFSQ== X-Received: by 10.66.27.202 with SMTP id v10mr7687348pag.127.1396284434679; Mon, 31 Mar 2014 09:47:14 -0700 (PDT) Received: from ?IPv6:2620:0:1000:3e02:d885:b4e2:312a:637? ([2620:0:1000:3e02:d885:b4e2:312a:637]) by mx.google.com with ESMTPSA id pi1sm42963046pac.14.2014.03.31.09.47.14 for (version=SSLv3 cipher=RC4-SHA bits=128/128); Mon, 31 Mar 2014 09:47:14 -0700 (PDT) Message-ID: <1396284433.29410.62.camel@edumazet-glaptop2.roam.corp.google.com> Subject: Re: NFS does not work on linux-next 20140331 From: Eric Dumazet To: Fabio Estevam Cc: "netdev@vger.kernel.org" , "David S. Miller" Date: Mon, 31 Mar 2014 09:47:13 -0700 In-Reply-To: References: <1396283344.29410.55.camel@edumazet-glaptop2.roam.corp.google.com> X-Mailer: Evolution 3.2.3-0ubuntu6 Mime-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Mon, 2014-03-31 at 13:35 -0300, Fabio Estevam wrote: > Hi Eric, > > On Mon, Mar 31, 2014 at 1:29 PM, Eric Dumazet 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. Arg, I reversed the patch , problem is that we can be called from process context, not from softirq --- 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 --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c index e1e47350784b..11a8d352c6b4 100644 --- a/net/ipv6/mcast.c +++ b/net/ipv6/mcast.c @@ -1620,12 +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;