diff options
author | Eliad Peller <eliad@wizery.com> | 2015-10-25 10:59:36 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2015-11-03 10:41:12 +0100 |
commit | 968a76cef3d1bb9a3b4d135cd788056e742859f3 (patch) | |
tree | dfe73df7dae4879fe96b045cdffc0d2d64e829be /net/mac80211/ocb.c | |
parent | c189a685b83955a39884dc2bdae531bc0adf3b98 (diff) | |
download | blackbird-op-linux-968a76cef3d1bb9a3b4d135cd788056e742859f3.tar.gz blackbird-op-linux-968a76cef3d1bb9a3b4d135cd788056e742859f3.zip |
mac80211: call drv_stop only if driver is started
If drv_start() fails during hw_restart, all the running
interfaces are being closed/stopped, which results in
drv_stop() being called, although the driver was never
started successfully.
This might cause drivers to perform operations on uninitialized
memory (as they assume it was initialized on drv_start)
Consider the local->started flag, and call the driver's stop()
op only if drv_start() succeeded before.
Move drv_start() and drv_stop() to driver-ops.c, as they are no
longer simple wrappers.
Signed-off-by: Eliad Peller <eliadx.peller@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ocb.c')
0 files changed, 0 insertions, 0 deletions