Le mardi 14 février 2012 à 12:06 +0100, Steffen Klassert a écrit :
On Tue, Feb 14, 2012 at 11:22:10AM +0100, Jean Delvare wrote:
quoted
Well I am still curious why the 3c59x driver has such slow polling when
other drivers I have been testing are able to report almost instantly
when I remove a network cable. Could it be that other network chips
generate an interrupt on cable removal and the 3com chips do not?
Yes, at least some of the supported chips do not generate an interrupt
on cable removal, so we have to check for this with a timer.
--
We could have a 5 sec timer in case device is a slave.
diff --git a/drivers/net/ethernet/3com/3c59x.c b/drivers/net/ethernet/3com/3c59x.c
index 1282f04..e463d10 100644
--- a/drivers/net/ethernet/3com/3c59x.c
+++ b/drivers/net/ethernet/3com/3c59x.c
@@ -1841,7 +1841,7 @@ vortex_timer(unsigned long data)
ok = 1;
}
- if (!netif_carrier_ok(dev))
+ if (dev->flags & IFF_SLAVE || !netif_carrier_ok(dev))
next_tick = 5*HZ;
if (vp->medialock)