diff options
author | James Harper <james.harper@bendigoit.com.au> | 2005-05-05 18:14:18 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-05-15 22:47:56 -0400 |
commit | 562faf469f35bf63c0b021550811280c81bdc52e (patch) | |
tree | a97720dac2a2fcd94407c825703ecab14e617a88 /drivers | |
parent | 15efa9bb2d4da7cd9feb1c67fcf3d9e0e1bd00c6 (diff) |
[PATCH] fix PROMISC/bridging in TLAN driver
This has been a problem for me for ages. When using bridging, the driver
is switched into promiscuous mode before the link init is complete. The
init complete routine then resets the promisc bit on the card so the kernel
still thinks the card is in promiscuous mode but the card isn't. doh.
I think this bug only shows up in bridging when the bridge is started at
boot time (or something else that sets promisc at the same time the card
was started). If promisc is enabled later it works.
Here's a trivial (and hopefully correct) patch that works for me. It
just calls the promisc/multicast setup routine after init.
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/tlan.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/tlan.c b/drivers/net/tlan.c index f0851c424097..9680a308c62b 100644 --- a/drivers/net/tlan.c +++ b/drivers/net/tlan.c | |||
@@ -2392,6 +2392,7 @@ TLan_FinishReset( struct net_device *dev ) | |||
2392 | TLan_SetTimer( dev, (10*HZ), TLAN_TIMER_FINISH_RESET ); | 2392 | TLan_SetTimer( dev, (10*HZ), TLAN_TIMER_FINISH_RESET ); |
2393 | return; | 2393 | return; |
2394 | } | 2394 | } |
2395 | TLan_SetMulticastList(dev); | ||
2395 | 2396 | ||
2396 | } /* TLan_FinishReset */ | 2397 | } /* TLan_FinishReset */ |
2397 | 2398 | ||