From 84972baffd596f488994dfe19596a1bbdd7ecaca Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Mon, 8 Sep 2003 19:46:25 -0700 Subject: [PATCH] Fix netdev close This should fix the "ifconfig down ... ifconfig up" problems some people have seen. --- net/core/dev.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/net/core/dev.c b/net/core/dev.c index 2cf887cee6d7..427100bd7f82 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -841,7 +841,11 @@ int dev_close(struct net_device *dev) * engine, but this requires more changes in devices. */ smp_mb__after_clear_bit(); /* Commit netif_running(). */ - netif_poll_disable(dev); + while (test_bit(__LINK_STATE_RX_SCHED, &dev->state)) { + /* No hurry. */ + current->state = TASK_INTERRUPTIBLE; + schedule_timeout(1); + } /* * Call the device specific close. This cannot fail. -- cgit v1.2.3