linux/drivers/net/wireless/ath/carl9170
Christian Lamparter 6ee6d1cb39 carl9170: fix debugfs crashes
Ben Greear reported:
> I see lots of instability as soon as I load up the carl9710 NIC.
> My application is going to be poking at it's debugfs files...
>
> BUG: KASAN: slab-out-of-bounds in carl9170_debugfs_read+0xd5/0x2a0
> [carl9170] at addr 0xffff8801bc1208b0
> Read of size 8 by task btserver/5888
> =======================================================================
> BUG kmalloc-256 (Tainted: G        W      ): kasan: bad access detected
> -----------------------------------------------------------------------
>
> INFO: Allocated in seq_open+0x50/0x100 age=2690 cpu=2 pid=772
>...

This breakage was caused by the introduction of intermediate
fops in debugfs by commit 9fd4dcece4
("debugfs: prevent access to possibly dead file_operations at file open")

Thankfully, the original/real fops are still available in d_fsdata.

Reported-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Cc: stable <stable@vger.kernel.org> # 4.7+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-09-21 18:58:58 +02:00
..
carl9170.h carl9170: fix sending URBs with wrong type when using full-speed 2014-08-11 14:43:51 -04:00
cmd.c cfg80211: remove "channel" from survey names 2015-01-08 15:27:52 +01:00
cmd.h wireless: Remove unnecessary ; from while (0) macros 2012-04-11 16:23:56 -04:00
debug.c carl9170: fix debugfs crashes 2016-09-21 18:58:58 +02:00
debug.h
eeprom.h
fw.c mac80211: convert HW flags to unsigned long bitmap 2015-06-10 16:05:36 +02:00
fwcmd.h carl9170: import 1.9.9 firmware headers 2016-03-07 14:11:09 +02:00
fwdesc.h carl9170: import 1.9.9 firmware headers 2016-03-07 14:11:09 +02:00
hw.h carl9170: import 1.9.9 firmware headers 2016-03-07 14:11:09 +02:00
Kconfig carl9170: Clarify kconfig text 2016-06-04 17:58:14 +03:00
led.c mac80211: make LED trigger names const 2015-05-05 14:21:55 +02:00
mac.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
main.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
Makefile
phy.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
phy.h
rx.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
tx.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
usb.c carl9170: match wait_for_completion_timeout return type 2015-05-26 13:53:23 +03:00
version.h carl9170: import 1.9.9 firmware headers 2016-03-07 14:11:09 +02:00
wlan.h