mac80211: Invoke TX LED in more code paths
authorBjorn Andersson <bjorn.andersson@linaro.org>
Sat, 27 May 2017 21:59:27 +0000 (14:59 -0700)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 30 May 2017 07:18:13 +0000 (09:18 +0200)
ieee80211_tx_status() is only one of the possible ways a driver can
report a handled packet, some drivers call this for every packet while
others calls it rarely or never.

In order to invoke the TX LED in the non-status reporting cases this
patch pushes the call to ieee80211_led_tx() into
ieee80211_report_used_skb(), which is shared between the various code
paths.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/status.c

index be47ac5..a9fa6ee 100644 (file)
@@ -546,6 +546,8 @@ static void ieee80211_report_used_skb(struct ieee80211_local *local,
                skb->wifi_acked_valid = 1;
                skb->wifi_acked = acked;
        }
+
+       ieee80211_led_tx(local);
 }
 
 /*
@@ -823,8 +825,6 @@ static void __ieee80211_tx_status(struct ieee80211_hw *hw,
                }
        }
 
-       ieee80211_led_tx(local);
-
        /* SNMP counters
         * Fragments are passed to low-level drivers as separate skbs, so these
         * are actually fragments, not frames. Update frame counters only for