cfg80211/wext: fix message ordering
authorJohannes Berg <johannes.berg@intel.com>
Wed, 27 Jan 2016 12:29:34 +0000 (13:29 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 29 Jan 2016 16:13:43 +0000 (17:13 +0100)
commitcb150b9d23be6ee7f3a0fff29784f1c5b5ac514d
tree616d91ae927e048344c8852a41a08898103794bd
parent8bf862739a7786ae72409220914df960a0aa80d8
cfg80211/wext: fix message ordering

Since cfg80211 frequently takes actions from its netdev notifier
call, wireless extensions messages could still be ordered badly
since the wext netdev notifier, since wext is built into the
kernel, runs before the cfg80211 netdev notifier. For example,
the following can happen:

5: wlan1: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN group default
    link/ether 02:00:00:00:01:00 brd ff:ff:ff:ff:ff:ff
5: wlan1: <BROADCAST,MULTICAST,UP>
    link/ether

when setting the interface down causes the wext message.

To also fix this, export the wireless_nlevent_flush() function
and also call it from the cfg80211 notifier.

Cc: stable@vger.kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
include/net/iw_handler.h
net/wireless/core.c
net/wireless/wext-core.c