Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b52f2198ac889561d341c6990d669a671f93f450
Commit:     b52f2198ac889561d341c6990d669a671f93f450
Parent:     d9f8bcbf67a0ee67c8cb0734f003dfe916bb5248
Author:     Johannes Berg <[EMAIL PROTECTED]>
AuthorDate: Fri Nov 16 01:49:11 2007 +0100
Committer:  John W. Linville <[EMAIL PROTECTED]>
CommitDate: Tue Nov 20 16:20:30 2007 -0500

    mac80211: fix ieee80211_set_multicast_list
    
    I recently experienced unexplainable behaviour with the b43
    driver when I had broken firmware uploaded. The cause may have
    been that promisc mode was not correctly enabled or disabled
    and this bug may have been the cause.
    
    Note how the values are compared later in the function so
    just doing the & will result in the wrong thing being
    compared and the test being false almost always.
    
    Signed-off-by: Johannes Berg <[EMAIL PROTECTED]>
    Signed-off-by: John W. Linville <[EMAIL PROTECTED]>
---
 net/mac80211/ieee80211.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c
index e0ee65a..c38e2cd 100644
--- a/net/mac80211/ieee80211.c
+++ b/net/mac80211/ieee80211.c
@@ -366,8 +366,8 @@ static void ieee80211_set_multicast_list(struct net_device 
*dev)
 
        allmulti = !!(dev->flags & IFF_ALLMULTI);
        promisc = !!(dev->flags & IFF_PROMISC);
-       sdata_allmulti = sdata->flags & IEEE80211_SDATA_ALLMULTI;
-       sdata_promisc = sdata->flags & IEEE80211_SDATA_PROMISC;
+       sdata_allmulti = !!(sdata->flags & IEEE80211_SDATA_ALLMULTI);
+       sdata_promisc = !!(sdata->flags & IEEE80211_SDATA_PROMISC);
 
        if (allmulti != sdata_allmulti) {
                if (dev->flags & IFF_ALLMULTI)
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to