* [PATCH] e1000: disable polling before registering netdevice
@ 2007-06-01 17:22 Auke Kok
2007-06-01 22:15 ` Herbert Xu
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Auke Kok @ 2007-06-01 17:22 UTC (permalink / raw)
To: jeff; +Cc: herbert, doug.chapman, netdev, auke-jan.h.kok
To assure the symmetry of poll enable/disable in up/down, we should
initialize the netdevice to be poll_disabled at load time. Doing
this after register_netdevice leaves us open to another race, so
lets move all the netif_* calls above register_netdevice so the
stack starts out how we expect it to be.
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: Doug Chapman <doug.chapman@hp.com>
---
drivers/net/e1000/e1000_main.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 9ec35b7..cf8af92 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -1142,13 +1142,16 @@ e1000_probe(struct pci_dev *pdev,
!e1000_check_mng_mode(&adapter->hw))
e1000_get_hw_control(adapter);
- strcpy(netdev->name, "eth%d");
- if ((err = register_netdev(netdev)))
- goto err_register;
-
/* tell the stack to leave us alone until e1000_open() is called */
netif_carrier_off(netdev);
netif_stop_queue(netdev);
+#ifdef CONFIG_E1000_NAPI
+ netif_poll_disable(netdev);
+#endif
+
+ strcpy(netdev->name, "eth%d");
+ if ((err = register_netdev(netdev)))
+ goto err_register;
DPRINTK(PROBE, INFO, "Intel(R) PRO/1000 Network Connection\n");
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] e1000: disable polling before registering netdevice
2007-06-01 17:22 [PATCH] e1000: disable polling before registering netdevice Auke Kok
@ 2007-06-01 22:15 ` Herbert Xu
2007-06-01 22:37 ` Doug Chapman
2007-06-03 15:47 ` Jeff Garzik
2 siblings, 0 replies; 4+ messages in thread
From: Herbert Xu @ 2007-06-01 22:15 UTC (permalink / raw)
To: Auke Kok; +Cc: jeff, doug.chapman, netdev
On Fri, Jun 01, 2007 at 10:22:39AM -0700, Auke Kok wrote:
> To assure the symmetry of poll enable/disable in up/down, we should
> initialize the netdevice to be poll_disabled at load time. Doing
> this after register_netdevice leaves us open to another race, so
> lets move all the netif_* calls above register_netdevice so the
> stack starts out how we expect it to be.
>
> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
> Cc: Herbert Xu <herbert@gondor.apana.org.au>
> Cc: Doug Chapman <doug.chapman@hp.com>
Looks good!
Thanks,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] e1000: disable polling before registering netdevice
2007-06-01 17:22 [PATCH] e1000: disable polling before registering netdevice Auke Kok
2007-06-01 22:15 ` Herbert Xu
@ 2007-06-01 22:37 ` Doug Chapman
2007-06-03 15:47 ` Jeff Garzik
2 siblings, 0 replies; 4+ messages in thread
From: Doug Chapman @ 2007-06-01 22:37 UTC (permalink / raw)
To: Auke Kok; +Cc: jeff, herbert, netdev
On Fri, 2007-06-01 at 10:22 -0700, Auke Kok wrote:
> To assure the symmetry of poll enable/disable in up/down, we should
> initialize the netdevice to be poll_disabled at load time. Doing
> this after register_netdevice leaves us open to another race, so
> lets move all the netif_* calls above register_netdevice so the
> stack starts out how we expect it to be.
>
> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
> Cc: Herbert Xu <herbert@gondor.apana.org.au>
> Cc: Doug Chapman <doug.chapman@hp.com>
I tested this on my HP Integrity systems and it looks good.
thanks,
- Doug
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] e1000: disable polling before registering netdevice
2007-06-01 17:22 [PATCH] e1000: disable polling before registering netdevice Auke Kok
2007-06-01 22:15 ` Herbert Xu
2007-06-01 22:37 ` Doug Chapman
@ 2007-06-03 15:47 ` Jeff Garzik
2 siblings, 0 replies; 4+ messages in thread
From: Jeff Garzik @ 2007-06-03 15:47 UTC (permalink / raw)
To: Auke Kok; +Cc: herbert, doug.chapman, netdev
Auke Kok wrote:
> To assure the symmetry of poll enable/disable in up/down, we should
> initialize the netdevice to be poll_disabled at load time. Doing
> this after register_netdevice leaves us open to another race, so
> lets move all the netif_* calls above register_netdevice so the
> stack starts out how we expect it to be.
>
> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
> Cc: Herbert Xu <herbert@gondor.apana.org.au>
> Cc: Doug Chapman <doug.chapman@hp.com>
> ---
>
> drivers/net/e1000/e1000_main.c | 11 +++++++----
> 1 files changed, 7 insertions(+), 4 deletions(-)
applied to #upstream-fixes
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-06-03 15:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-01 17:22 [PATCH] e1000: disable polling before registering netdevice Auke Kok
2007-06-01 22:15 ` Herbert Xu
2007-06-01 22:37 ` Doug Chapman
2007-06-03 15:47 ` Jeff Garzik
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).