[PATCH] r8169: don't call napi_disable if not doing NAPI

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Ingo Molnar <mingo@...>, Francois Romieu <romieu@...>, Jeff Garzik <jeff@...>
Cc: Romano Giannetti <romanol@...>, Peter Zijlstra <a.p.zijlstra@...>, Linux Kernel Mailing List <linux-kernel@...>, David S. Miller <davem@...>, <netdev@...>, Edward Hsu <edward_hsu@...>, Andrew Morton <akpm@...>
Date: Friday, October 26, 2007 - 2:33 pm

Don't call napi_disable if not configured.
And make sure that any misuse of napi_xxx in future fails
with a compile error.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>

--- a/drivers/net/r8169.c	2007-10-24 21:38:43.000000000 -0700
+++ b/drivers/net/r8169.c	2007-10-26 11:27:02.000000000 -0700
@@ -392,7 +392,9 @@ struct rtl8169_private {
 	void __iomem *mmio_addr;	/* memory map physical address */
 	struct pci_dev *pci_dev;	/* Index of PCI device */
 	struct net_device *dev;
+#ifdef CONFIG_R8169_NAPI
 	struct napi_struct napi;
+#endif
 	spinlock_t lock;		/* spin lock flag */
 	u32 msg_enable;
 	int chipset;
@@ -2989,13 +2991,16 @@ static void rtl8169_down(struct net_devi
 {
 	struct rtl8169_private *tp = netdev_priv(dev);
 	void __iomem *ioaddr = tp->mmio_addr;
-	unsigned int poll_locked = 0;
 	unsigned int intrmask;
 
 	rtl8169_delete_timer(dev);
 
 	netif_stop_queue(dev);
 
+#ifdef CONFIG_R8169_NAPI
+	napi_disable(&tp->napi);
+#endif
+
 core_down:
 	spin_lock_irq(&tp->lock);
 
@@ -3009,11 +3014,6 @@ core_down:
 
 	synchronize_irq(dev->irq);
 
-	if (!poll_locked) {
-		napi_disable(&tp->napi);
-		poll_locked++;
-	}
-
 	/* Give a racing hard_start_xmit a few cycles to complete. */
 	synchronize_sched();  /* FIXME: should this be synchronize_irq()? */
 
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Linux v2.6.24-rc1, Linus Torvalds, (Wed Oct 24, 12:19 am)
Re: Linux v2.6.24-rc1, , (Thu Oct 25, 8:45 am)
2.6.24-rc1 doesn't build..., Theodore Tso, (Thu Oct 25, 1:18 am)
Re: 2.6.24-rc1 doesn't build..., Kamalesh Babulal, (Thu Oct 25, 1:30 am)
[patch] portman2x4.c: fix boot hang, Ingo Molnar, (Wed Oct 24, 3:44 pm)
Re: [patch] portman2x4.c: fix boot hang, Takashi Iwai, (Thu Oct 25, 4:16 am)
Re: [patch] portman2x4.c: fix boot hang, Frans Pop, (Wed Oct 24, 4:12 pm)
Re: [patch] portman2x4.c: fix boot hang, Ingo Molnar, (Wed Oct 24, 5:29 pm)
Re: Linux v2.6.24-rc1, Giacomo Catenazzi, (Wed Oct 24, 2:19 pm)
Re: [Bug 9246] On 2.6.24-rc1-gc9927c2b BUG: unable to handle..., Giacomo A. Catenazzi, (Tue Dec 4, 12:47 pm)
Re: [Bug 9246] On 2.6.24-rc1-gc9927c2b BUG: unable to handle..., Giacomo A. Catenazzi, (Wed Dec 5, 5:26 am)
2.6.24-rc1 fails with lockup and BUG:, Romano Giannetti, (Wed Oct 24, 9:25 am)
Re: 2.6.24-rc1 fails with lockup and BUG:, Joseph Fannin, (Wed Oct 24, 12:44 pm)
Re: 2.6.24-rc1 fails with lockup and BUG:, Romano Giannetti, (Fri Oct 26, 1:59 am)
Re: 2.6.24-rc1 fails with lockup and BUG:, Ingo Molnar, (Wed Oct 24, 10:27 am)
Re: 2.6.24-rc1 fails with lockup and BUG:, Romano Giannetti, (Wed Oct 24, 11:53 am)
Re: 2.6.24-rc1 fails with lockup and BUG:, Ingo Molnar, (Wed Oct 24, 11:55 am)
Re: 2.6.24-rc1 fails with lockup and BUG:, Peter Zijlstra, (Wed Oct 24, 12:11 pm)
Re: 2.6.24-rc1 fails with lockup and BUG:, Romano Giannetti, (Fri Oct 26, 1:57 am)
Re: 2.6.24-rc1 fails with lockup - /sbin/ifconfig / inet_ioc..., Stephen Hemminger, (Fri Oct 26, 12:48 pm)
[PATCH] r8169: don't call napi_disable if not doing NAPI, Stephen Hemminger, (Fri Oct 26, 2:33 pm)
Re: [PATCH] r8169: don't call napi_disable if not doing NAPI, Romano Giannetti, (Mon Oct 29, 4:56 am)
Re: [PATCH] r8169: don't call napi_disable if not doing NAPI, Romano Giannetti, (Sun Oct 28, 6:18 pm)
Re: [PATCH] r8169: don't call napi_disable if not doing NAPI, Francois Romieu, (Fri Oct 26, 4:17 pm)
[git pull] x86 arch updates, Ingo Molnar, (Wed Oct 24, 7:30 am)
Re: [git pull] x86 arch updates, Jeff Garzik, (Wed Oct 24, 7:48 am)
Re: [git pull] x86 arch updates, Ingo Molnar, (Wed Oct 24, 8:03 am)
Re: Linux v2.6.24-rc1, Christoph Hellwig, (Wed Oct 24, 4:04 am)
Re: Linux v2.6.24-rc1, Sam Ravnborg, (Wed Oct 24, 7:07 am)
Re: Linux v2.6.24-rc1, Ingo Molnar, (Wed Oct 24, 8:12 am)
Re: Linux v2.6.24-rc1, Sam Ravnborg, (Wed Oct 24, 8:21 am)
Re: Linux v2.6.24-rc1, Ingo Molnar, (Wed Oct 24, 4:04 am)
Re: Linux v2.6.24-rc1, Dave Young, (Wed Oct 24, 1:22 am)
Re: Linux v2.6.24-rc1, Ingo Molnar, (Wed Oct 24, 3:23 am)
Re: Linux v2.6.24-rc1, Jens Axboe, (Wed Oct 24, 4:12 am)
Re: Linux v2.6.24-rc1, Dave Young, (Wed Oct 24, 3:33 am)
Re: Linux v2.6.24-rc1, Ohad Ben-Cohen, (Wed Oct 24, 3:32 am)
Re: Linux v2.6.24-rc1, Willy Tarreau, (Wed Oct 24, 12:49 am)