fix warning in drivers/net/sis900.c

fix warning in drivers/net/sis900.c

Post by Martin J. Blig » Sun, 02 Mar 2003 19:20:09



drivers/net/sis900.c: In function `set_rx_mode':
drivers/net/sis900.c:2100: warning: passing arg 2 of `set_bit' from incompatible pointer type

I just cast this. Seems to work fine at the moment, so presumably it's
correct.

M.

diff -urpN -X /home/fletch/.diff.exclude */drivers/net/sis900.c sisfix/drivers/net/sis900.c
--- */drivers/net/sis900.c Tue Feb 25 23:03:47 2003

                for (i = 0, mclist = net_dev->mc_list; mclist && i < net_dev->mc_count;
                     i++, mclist = mclist->next)
                        set_bit(sis900_compute_hashtable_index(mclist->dmi_addr, revision),
-                               mc_filter);
+                               (unsigned long *) mc_filter);
        }

        /* update Multicast Hash Table in Receive Filter */

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://www.veryComputer.com/
Please read the FAQ at  http://www.veryComputer.com/

 
 
 

fix warning in drivers/net/sis900.c

Post by Jeff Garzi » Sun, 02 Mar 2003 19:30:16



> drivers/net/sis900.c: In function `set_rx_mode':
> drivers/net/sis900.c:2100: warning: passing arg 2 of `set_bit' from incompatible pointer type

> I just cast this. Seems to work fine at the moment, so presumably it's
> correct.

Nope -- set_bit wants to work on a real unsigned long.  While your patch
will work, the proper fix is to not use set_bit :)

        Jeff

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

 
 
 

1. fix warning in drivers/net/sis900.c

Fair enough. How about this? (compile tested, but not machine-tested)
mc_filter is declared as this ...
u16 mc_filter[16] = {0};        /* 256/128 bits multicast hash table */
so I just split off the high & low parts, and use them seperately ...

M.

diff -urpN -X /home/fletch/.diff.exclude virgin/drivers/net/sis900.c sisfix/drivers/net/sis900.c
--- virgin/drivers/net/sis900.c Mon Mar 17 21:43:45 2003

                   use Receive Filter to reject unwanted MCAST packet */
                struct dev_mc_list *mclist;
                rx_mode = RFAAB;
-               for (i = 0, mclist = net_dev->mc_list; mclist && i < net_dev->mc_count;
-                    i++, mclist = mclist->next)
-                       set_bit(sis900_compute_hashtable_index(mclist->dmi_addr, revision),
-                               mc_filter);
+               for (i = 0, mclist = net_dev->mc_list;
+                                       mclist && i < net_dev->mc_count;
+                                       i++, mclist = mclist->next) {
+                       int index = sis900_compute_hashtable_index(
+                                               mclist->dmi_addr, revision);
+                       mc_filter[index/16] |= (u16) (1 << (index & 0xff));
+               }
        }

        /* update Multicast Hash Table in Receive Filter */

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

2. How to use "-name *.c" with find?

3. [5/8] fix printk() type warning in drivers/net/starfire.c

4. "talking" to a "real" phone via a modem?

5. (revised) fix net/irda warnings for 2.4.21-pre3

6. New or Revised TAs on websco, 960515

7. [PATCH][2.5] Remove warning due to comparison in drivers/net/pcnet32.c

8. Debug Screen ??

9. [8/8] fix unused function warning in drivers/block/floppy.c

10. Warning fix in drivers/mtd/mtdblock.c

11. 2.5.40: warning fix for drivers/usb/core/usb.c

12. fix trivial drivers/char/agp/generic.c compile warning

13. fix check warnings in drivers/macintosh