From: David Miller <davem@davemloft.net>
To: ossthema@de.ibm.com
Cc: shemminger@linux-foundation.org, netdev@vger.kernel.org,
themann@de.ibm.com, raisch@de.ibm.com
Subject: Re: new NAPI interface broken
Date: Wed, 12 Sep 2007 05:50:04 -0700 (PDT) [thread overview]
Message-ID: <20070912.055004.88490155.davem@davemloft.net> (raw)
In-Reply-To: <200709071137.02801.ossthema@de.ibm.com>
From: Jan-Bernd Themann <ossthema@de.ibm.com>
Date: Fri, 7 Sep 2007 11:37:02 +0200
> 2) On SMP systems: after netif_rx_complete has been called on CPU1
> (+interruts enabled), netif_rx_schedule could be called on CPU2
> (irq handler) before net_rx_action on CPU1 has checked NAPI_STATE_SCHED.
> In that case the device would be added to poll lists of CPU1 and CPU2
> as net_rx_action would see NAPI_STATE_SCHED set.
> This must not happen. It will be caught when netif_rx_complete is
> called the second time (BUG() called)
>
> This would mean we have a problem on all SMP machines right now.
This is not a correct statement.
Only on your platform do network device interrupts get moved
around, no other platform does this.
Sparc64 doesn't, all interrupts stay in one location after
the cpu is initially choosen.
x86 and x86_64 specifically do not move around network
device interrupts, even though other device types do
get dynamic IRQ cpu distribution.
That's why you are the only person seeing this problem.
I agree that it should be fixed, but we should also fix the IRQ
distribution scheme used on powerpc platforms which is totally
broken in these cases.
next prev parent reply other threads:[~2007-09-12 12:50 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-07 9:37 new NAPI interface broken Jan-Bernd Themann
2007-09-12 12:50 ` David Miller [this message]
2007-09-12 13:10 ` new NAPI interface broken for POWER architecture? Christoph Raisch
2007-09-12 13:27 ` David Miller
2007-09-12 15:18 ` Arnd Bergmann
2007-10-16 7:29 ` new NAPI interface broken Benjamin Herrenschmidt
2007-10-16 7:42 ` Benjamin Herrenschmidt
2007-10-16 7:44 ` David Miller
2007-10-16 8:28 ` Benjamin Herrenschmidt
2007-10-16 8:31 ` David Miller
2007-10-16 9:01 ` Benjamin Herrenschmidt
2007-10-16 21:01 ` Anton Blanchard
2007-10-17 15:26 ` Christoph Raisch
2007-10-16 15:56 ` Arjan van de Ven
2007-09-14 22:12 ` David Miller
2007-09-18 16:15 ` Jan-Bernd Themann
2007-09-18 19:08 ` David Miller
2007-09-19 15:33 ` Roland Dreier
2007-09-19 15:43 ` Jan-Bernd Themann
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=20070912.055004.88490155.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=ossthema@de.ibm.com \
--cc=raisch@de.ibm.com \
--cc=shemminger@linux-foundation.org \
--cc=themann@de.ibm.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).