From: David Miller <davem@davemloft.net>
To: herbert@gondor.apana.org.au
Cc: dhananjay.phadke@qlogic.com, akpm@linux-foundation.org,
bugme-daemon@bugzilla.kernel.org, netdev@vger.kernel.org,
bugzilla-daemon@bugzilla.kernel.org, amit.salecha@qlogic.com
Subject: Re: [Bugme-new] [Bug 13617] New: GRO:__napi_complete from net_rx_action crash
Date: Fri, 26 Jun 2009 19:28:04 -0700 (PDT) [thread overview]
Message-ID: <20090626.192804.199785674.davem@davemloft.net> (raw)
In-Reply-To: <20090627014900.GA19639@gondor.apana.org.au>
From: Herbert Xu <herbert@gondor.apana.org.au>
Date: Sat, 27 Jun 2009 09:49:00 +0800
> On Fri, Jun 26, 2009 at 10:24:58AM -0700, David Miller wrote:
>>
>> >>> In net_rx_action, there is check if napi_disable_pending then call
>> >>> __napi_complete.
>> >>> In __napi_complete, there is BUG_ON(n->gro_list);
>> >>> Which has hit in below bug dump.
>> >>> Why __napi_complete is called from net_rx_action instead of napi_complete.
>> >>> napi_complete flushes the gro list.
>
> Indeed, it was an oversight. Thanks for catching it!
>
> gro: Flush GRO packets in napi_disable_pending path
>
> When NAPI is disabled while we're in net_rx_action, we end up
> calling __napi_complete without flushing GRO packets. This is
> a bug as it would cause the GRO packets to linger, of course it
> also literally BUGs to catch error like this :)
>
> This patch changes it to napi_complete, with the obligatory IRQ
> reenabling. This should be safe because we've only just disabled
> IRQs and it does not materially affect the test conditions in
> between.
>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Applied.
I remembered that change where we had to disable GRO in the
legacy RX path and all the IRQ disabling problems we ran into
there. So I went and had a look at that to make sure we won't
have similar issues here, luckily it seems not.
Thanks!
next prev parent reply other threads:[~2009-06-27 2:28 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-13617-10286@http.bugzilla.kernel.org/>
2009-06-25 19:29 ` [Bugme-new] [Bug 13617] New: GRO:__napi_complete from net_rx_action crash Andrew Morton
2009-06-26 17:13 ` Dhananjay Phadke
2009-06-26 17:24 ` David Miller
2009-06-27 1:49 ` Herbert Xu
2009-06-27 2:28 ` David Miller [this message]
2009-06-27 3:33 ` Herbert Xu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090626.192804.199785674.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=akpm@linux-foundation.org \
--cc=amit.salecha@qlogic.com \
--cc=bugme-daemon@bugzilla.kernel.org \
--cc=bugzilla-daemon@bugzilla.kernel.org \
--cc=dhananjay.phadke@qlogic.com \
--cc=herbert@gondor.apana.org.au \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.