瀏覽代碼

[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>
James Harper 20 年之前
父節點
當前提交
562faf469f
共有 1 個文件被更改,包括 1 次插入0 次删除
  1. 1 0
      drivers/net/tlan.c

+ 1 - 0
drivers/net/tlan.c

@@ -2392,6 +2392,7 @@ TLan_FinishReset( struct net_device *dev )
 		TLan_SetTimer( dev, (10*HZ), TLAN_TIMER_FINISH_RESET );
 		return;
 	}
+	TLan_SetMulticastList(dev);
 
 } /* TLan_FinishReset */