Explorar o código

[netdrvr] fix smc91c92_cs multicast bug

The smc91c92_cs multicast does not work
if the count of multicast address is 1.

Signed-off-by: <komurojun-mbn@nifty.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Komuro %!s(int64=20) %!d(string=hai) anos
pai
achega
bb53d6d0e7
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      drivers/net/pcmcia/smc91c92_cs.c

+ 1 - 1
drivers/net/pcmcia/smc91c92_cs.c

@@ -1832,7 +1832,7 @@ static void fill_multicast_tbl(int count, struct dev_mc_list *addrs,
 {
 {
     struct dev_mc_list	*mc_addr;
     struct dev_mc_list	*mc_addr;
 
 
-    for (mc_addr = addrs;  mc_addr && --count > 0;  mc_addr = mc_addr->next) {
+    for (mc_addr = addrs;  mc_addr && count-- > 0;  mc_addr = mc_addr->next) {
 	u_int position = ether_crc(6, mc_addr->dmi_addr);
 	u_int position = ether_crc(6, mc_addr->dmi_addr);
 #ifndef final_version		/* Verify multicast address. */
 #ifndef final_version		/* Verify multicast address. */
 	if ((mc_addr->dmi_addr[0] & 1) == 0)
 	if ((mc_addr->dmi_addr[0] & 1) == 0)