lkml.org 
[lkml]   [2003]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] Re: ifconfig up/down problem
Sven-Haegar Koch wrote:
> hi...
>
> Short: ifconfig ethX down locks
>
> Kernel: 2.4.22-bk12 (same problem with 2.4.23-pre3)
> eth0: eepro100
> eth1: orinoco_cs (orinoco mini-pci)
> System: Toshiba Satellite Pro 4600 Laptop, P3 700Mhz
>
> Just after booting, no X startet yet, interface not yet initialized:
>
> aurora:~# ifconfig eth1 down
> aurora:~# ifconfig eth1 up
> aurora:~# ifconfig eth1 down
> aurora:~# ifconfig eth1 up
> aurora:~# ifconfig eth1 down
> <--lock here, shell does not return, even ctrl-c does not help
>
> haegar@aurora:~$ ps axl|grep ifconfig
> 4 0 1041 1035 9 0 1448 404 dev_cl S pts/0 0:00 ifconfig eth1
>
> top shows ifconfig consuming 100% cpu, 100% system
>
> The same happens with eth0, there it takes only two up/down cycles,
> perhaps because it is already configured with ipv4+ipv6 addresses, and the
> same happens using '/sbin/ip link set eth0 up/down' too.
>
> Kernel 2.4.20-pre2-ac3 is ok (my last kernel, running for month')



Does the attached patch fix it?

Jeff


diff -Nru a/net/core/dev.c b/net/core/dev.c
--- a/net/core/dev.c Mon Sep 8 18:14:36 2003
+++ b/net/core/dev.c Mon Sep 8 18:14:36 2003
@@ -851,7 +851,11 @@
* 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.
\
 
 \ /
  Last update: 2005-03-22 13:48    [W:0.042 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site