From: Jeff Moyer <jmoyer@redhat.com>
To: Auke Kok <auke-jan.h.kok@intel.com>
Cc: Matt Mackall <mpm@selenic.com>,
"Garzik, Jeff" <jgarzik@pobox.com>,
Neil Horman <nhorman@tuxdriver.com>,
Mitch Williams <mitch.a.williams@intel.com>,
netdev@vger.kernel.org, "Brandeburg,
Jesse" <jesse.brandeburg@intel.com>,
"Kok, Auke" <auke@foo-projects.org>
Subject: Re: [PATCH 1/2] e1000: fix netpoll with NAPI
Date: Wed, 07 Jun 2006 14:44:54 -0400 [thread overview]
Message-ID: <x49d5dkvm8p.fsf@segfault.boston.redhat.com> (raw)
In-Reply-To: <44871A19.7080805@intel.com> (Auke Kok's message of "Wed, 07 Jun 2006 11:25:29 -0700")
==> Regarding Re: [PATCH 1/2] e1000: fix netpoll with NAPI; Auke Kok <auke-jan.h.kok@intel.com> adds:
auke-jan.h.kok> Hi,
auke-jan.h.kok> we're not too happy with this as it puts a branch right in
auke-jan.h.kok> the regular receive path. We haven't ran the numbers on it
auke-jan.h.kok> yet but it is likely that this will lower performance
auke-jan.h.kok> significantly during normal receives for something that is
auke-jan.h.kok> not common use.
auke-jan.h.kok> Attached below a (revised) patch that adds proper locking
auke-jan.h.kok> around the rx_clean to prevent the race.
That patch locks around the tx clean routine. As such, it doesn't prevent
the problem.
> + disable_irq(adapter->pdev->irq);
> + if (likely(netif_rx_schedule_prep(&adapter->polling_netdev[0]))) {
> + if (spin_trylock(&adapter->tx_queue_lock)) {
> + e1000_clean_tx_irq(adapter, &adapter->tx_ring[0]);
> + spin_unlock(&adapter->tx_queue_lock);
> + }
> + adapter->clean_rx(adapter, adapter->rx_ring,
> + &budget, netdev->weight);
> + clear_bit(__LINK_STATE_RX_SCHED,
> + &adapter->polling_netdev[0].state);
-Jeff
next prev parent reply other threads:[~2006-06-07 18:52 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-05 23:09 [PATCH 0/2] e1000: fixes for netpoll+NAPI, ARM Kok, Auke
2006-06-05 23:11 ` [PATCH 1/2] e1000: fix netpoll with NAPI Kok, Auke
2006-06-06 13:52 ` Neil Horman
2006-06-06 16:39 ` Mitch Williams
2006-06-06 17:05 ` Neil Horman
2006-06-06 17:18 ` Auke Kok
2006-06-06 17:30 ` Jeff Moyer
2006-06-06 17:34 ` Auke Kok
2006-06-06 17:42 ` Jeff Moyer
2006-06-06 23:17 ` Matt Mackall
2006-06-07 15:05 ` Neil Horman
2006-06-07 16:48 ` Matt Mackall
2006-06-07 18:25 ` Auke Kok
2006-06-07 18:44 ` Jeff Moyer [this message]
2006-06-07 19:18 ` Neil Horman
2006-06-08 17:19 ` Mitch Williams
2006-06-08 17:29 ` Jeff Moyer
2006-06-12 0:13 ` Neil Horman
2006-06-12 16:42 ` Mitch Williams
2006-06-12 18:06 ` Neil Horman
2006-06-14 20:41 ` Neil Horman
2006-06-14 23:44 ` Mitch Williams
2006-06-15 12:44 ` John W. Linville
2006-06-15 20:45 ` Mitch Williams
2006-06-20 8:28 ` Andrew Grover
2006-06-07 18:54 ` John W. Linville
2006-06-08 17:23 ` Mitch Williams
2006-06-08 18:39 ` John W. Linville
2006-06-06 17:29 ` Jeff Moyer
2006-06-05 23:11 ` [PATCH 2/2] e1000: remove risky prefetch on next_skb->data Kok, Auke
2006-06-05 23:21 ` Rick Jones
2006-06-06 0:12 ` Brandeburg, Jesse
2006-06-06 0:16 ` Rick Jones
2006-06-06 0:22 ` Andi Kleen
2006-06-06 0:26 ` Brandeburg, Jesse
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=x49d5dkvm8p.fsf@segfault.boston.redhat.com \
--to=jmoyer@redhat.com \
--cc=auke-jan.h.kok@intel.com \
--cc=auke@foo-projects.org \
--cc=jesse.brandeburg@intel.com \
--cc=jgarzik@pobox.com \
--cc=mitch.a.williams@intel.com \
--cc=mpm@selenic.com \
--cc=netdev@vger.kernel.org \
--cc=nhorman@tuxdriver.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 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.