Re: bonding with 3c59x driver
From: Jean Delvare <hidden>
Date: 2012-02-14 19:27:16
On Tuesday 14 February 2012 07:27:05 pm Rick Jones wrote:
On 02/14/2012 03:13 AM, Eric Dumazet wrote:quoted
Le mardi 14 février 2012 à 12:06 +0100, Steffen Klassert a écrit :quoted
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.cb/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)Does the device being a slave in a bond change the overheads of the check being performed?
No, but it changes the interest in having faster polling. The overhead is the same but the interest/overhead trade-off is much higher. Without the patch above, doing bonding on top of 3c59x is simply not possible, at least not in active-backup mode. For other modes it depends if you are only interested in load balancing or also on redundancy. -- Jean Delvare Suse L3