Commit af090053 authored by Jeff Garzik's avatar Jeff Garzik

Merge branch 'upstream-jeff' of...

Merge branch 'upstream-jeff' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6 into upstream-fixes
parents 3830de73 d1417862
...@@ -166,13 +166,14 @@ config NET_SB1000 ...@@ -166,13 +166,14 @@ config NET_SB1000
If you don't have this card, of course say N. If you don't have this card, of course say N.
config IP1000 config IP1000
tristate "IP1000 Gigabit Ethernet support" tristate "IP1000 Gigabit Ethernet support"
depends on PCI && EXPERIMENTAL depends on PCI && EXPERIMENTAL
---help--- select MII
This driver supports IP1000 gigabit Ethernet cards. ---help---
This driver supports IP1000 gigabit Ethernet cards.
To compile this driver as a module, choose M here: the module To compile this driver as a module, choose M here: the module
will be called ipg. This is recommended. will be called ipg. This is recommended.
source "drivers/net/arcnet/Kconfig" source "drivers/net/arcnet/Kconfig"
......
...@@ -392,7 +392,9 @@ struct rtl8169_private { ...@@ -392,7 +392,9 @@ struct rtl8169_private {
void __iomem *mmio_addr; /* memory map physical address */ void __iomem *mmio_addr; /* memory map physical address */
struct pci_dev *pci_dev; /* Index of PCI device */ struct pci_dev *pci_dev; /* Index of PCI device */
struct net_device *dev; struct net_device *dev;
#ifdef CONFIG_R8169_NAPI
struct napi_struct napi; struct napi_struct napi;
#endif
spinlock_t lock; /* spin lock flag */ spinlock_t lock; /* spin lock flag */
u32 msg_enable; u32 msg_enable;
int chipset; int chipset;
...@@ -2989,13 +2991,16 @@ static void rtl8169_down(struct net_device *dev) ...@@ -2989,13 +2991,16 @@ static void rtl8169_down(struct net_device *dev)
{ {
struct rtl8169_private *tp = netdev_priv(dev); struct rtl8169_private *tp = netdev_priv(dev);
void __iomem *ioaddr = tp->mmio_addr; void __iomem *ioaddr = tp->mmio_addr;
unsigned int poll_locked = 0;
unsigned int intrmask; unsigned int intrmask;
rtl8169_delete_timer(dev); rtl8169_delete_timer(dev);
netif_stop_queue(dev); netif_stop_queue(dev);
#ifdef CONFIG_R8169_NAPI
napi_disable(&tp->napi);
#endif
core_down: core_down:
spin_lock_irq(&tp->lock); spin_lock_irq(&tp->lock);
...@@ -3009,11 +3014,6 @@ core_down: ...@@ -3009,11 +3014,6 @@ core_down:
synchronize_irq(dev->irq); synchronize_irq(dev->irq);
if (!poll_locked) {
napi_disable(&tp->napi);
poll_locked++;
}
/* Give a racing hard_start_xmit a few cycles to complete. */ /* Give a racing hard_start_xmit a few cycles to complete. */
synchronize_sched(); /* FIXME: should this be synchronize_irq()? */ synchronize_sched(); /* FIXME: should this be synchronize_irq()? */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment