wl1271: use ieee80211_rx_ni()
authorLuciano Coelho <luciano.coelho@nokia.com>
Wed, 21 Oct 2009 11:03:46 +0000 (14:03 +0300)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 27 Oct 2009 20:48:35 +0000 (16:48 -0400)
Use the new ieee80211_rx_ni() function instead of ieee80211_rx().  Since we
use a workqueue to handle the RX path, we need to call the new function,
which disables bottom half handling.  This patch fixes the NOHZ:
local_softirq_pending messages.

CC: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
Reviewed-by: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/wl12xx/wl1271_rx.c

index dbf07bea87c02b97df6b7877bc82570862023714..37d81ab6acc025626e486e77b6018ad607587c85 100644 (file)
@@ -184,7 +184,7 @@ static void wl1271_rx_handle_data(struct wl1271 *wl, u32 length)
                     beacon ? "beacon" : "");
 
        memcpy(IEEE80211_SKB_RXCB(skb), &rx_status, sizeof(rx_status));
-       ieee80211_rx(wl->hw, skb);
+       ieee80211_rx_ni(wl->hw, skb);
 }
 
 void wl1271_rx(struct wl1271 *wl, struct wl1271_fw_status *status)