On BigEndian gcc complains: drivers/net/wireless/airo.c: In function ‘sniffing_mode’: drivers/net/wireless/airo.c:4809: warning: integer overflow in expression Fix this by doing the bitwise AND on the host-endian value. --- I don't know why GCC warns, however. The original code looks OK to me, too. Index: wireless-testing/drivers/net/wireless/airo.c =================================================================== --- wireless-testing.orig/drivers/net/wireless/airo.c 2009-11-01 13:58:47.000000000 +0100 +++ wireless-testing/drivers/net/wireless/airo.c 2009-11-25 22:49:18.000000000 +0100 @@ -4806,7 +4806,7 @@ static int airo_config_commit(struct net static inline int sniffing_mode(struct airo_info *ai) { - return le16_to_cpu(ai->config.rmode & RXMODE_MASK) >= + return (le16_to_cpu(ai->config.rmode) & le16_to_cpu(RXMODE_MASK)) >= le16_to_cpu(RXMODE_RFMON); } -- Greetings, Michael. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html