Bug 186281 - iwlwlifi: 5300: fail to flush all tx fifo queues
Summary: iwlwlifi: 5300: fail to flush all tx fifo queues
Alias: None
Product: Drivers
Classification: Unclassified
Component: network-wireless (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: DO NOT USE - assign "network-wireless-intel" component instead
Depends on:
Reported: 2016-11-01 13:45 UTC by laura
Modified: 2016-11-02 03:42 UTC (History)
0 users

See Also:
Kernel Version: 3.8.7
Regression: No
Bisected commit-id:


Description laura 2016-11-01 13:45:49 UTC
i have a intel galileo wich disconnect iwlwifi random with error fail to flush. 

i have patch the driver with better fix of emmanuel but not resolve
Comment 1 Emmanuel Grumbach 2016-11-01 17:46:05 UTC
Please share the patch you made.

Can you upgrade your kernel?
Comment 2 laura 2016-11-01 18:23:39 UTC
The problem is this... I can't upgrade the kernel unfortunally ...

I applyed this https://bugzilla.redhat.com/attachment.cgi?id=667944&action=diff and the connection was too slow ...

The second patch  https://bugzilla.redhat.com/attachment.cgi?id=670702&action=diff didn't resolve the bug
Comment 3 Emmanuel Grumbach 2016-11-01 19:12:30 UTC
Please check the bug in "See also".

You should cherry-pick:

commit a0855054e59b0c5b2b00237fdb5147f7bcc18efb
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Sun Oct 5 09:11:14 2014 +0300

    iwlwifi: dvm: drop non VO frames when flushing
Comment 4 laura 2016-11-01 21:42:55 UTC
this is for others kernel :(
Comment 5 Emmanuel Grumbach 2016-11-02 03:42:46 UTC
Yes of course, but you can try to apply it on your (very very old version of the) kernel.

you can also try to set drop to true always in that function.
Something like:
diff --git a/drivers/net/wireless/iwlwifi/dvm/mac80211.c b/drivers/net/wireless/iwlwifi/dvm/mac80211.c
index 3163e0f..9b7dfbd 100644
--- a/drivers/net/wireless/iwlwifi/dvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/dvm/mac80211.c
@@ -1016,6 +1016,8 @@ static void iwlagn_mac_flush(struct ieee80211_hw *hw, bool drop)
                goto done;
+       drop = true;
         * mac80211 will not push any more frames for transmit
         * until the flush is completed

Anyway, we can't do anything else for you since you run on an old kernel and this device is 9 years old.

Closing the bug.

Note You need to log in before you can comment on or make changes to this bug.