linux_dsm_epyc7002/drivers/net/wireless
Brian Norris 2f47150ab3 mwifiex: pcie: disable device DMA before unmapping/freeing buffers
In testing the mwifiex reset code path, I've noticed KASAN complaining
about some "overwritten poison values" in our RX buffer descriptors.
Because KASAN didn't notice this at the time of a CPU write, this seems
to suggest that the device is writing to this memory.

This makes a little sense, because when resetting, we don't necessarily
expect the device to be responsive, so we don't have a chance to disable
everything cleanly.

We can at least take the precaution of disabling DMA for the device
though, and in my testing that seems to clear up this particular issue.

This patch reorders the removal path so that we disable the device
*before* releasing our last PCIe buffers, and it clears/sets the bus
master feature from the PCI device when resetting.

Along the way, remove the insufficient (and confusing) error path in
mwifiex_pcie_up_dev() (it doesn't unwind things well enough, and it
doesn't propagate its errors upward anyway).

Signed-off-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2017-07-28 17:47:54 +03:00
..
admtek networking: make skb_push & __skb_push return void pointers 2017-06-16 11:48:40 -04:00
ath ath10k: increase buffer len to print all wmi services 2017-07-06 15:18:44 +03:00
atmel networking: introduce and use skb_put_data() 2017-06-16 11:48:37 -04:00
broadcom drivers/net: Fix ptr_ret.cocci warnings. 2017-07-25 12:27:06 -07:00
cisco wireless: airo: remove unnecessary static in writerids() 2017-07-19 16:33:57 -07:00
intel wireless: iwlegacy: Constify attribute_group structures. 2017-07-18 12:04:56 -07:00
intersil Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-07-05 12:31:59 -07:00
marvell mwifiex: pcie: disable device DMA before unmapping/freeing buffers 2017-07-28 17:47:54 +03:00
mediatek networking: make skb_push & __skb_push return void pointers 2017-06-16 11:48:40 -04:00
quantenna qtnfmac: fix uninitialized return code in ret 2017-06-28 20:50:12 +03:00
ralink rt2x00: make const array glrt_table static 2017-07-13 09:23:56 -07:00
realtek rtlwifi: kfree entry until after entry->bssid has been accessed 2017-07-27 13:58:18 +03:00
rsi rsi: fix static checker warning 2017-07-28 17:27:19 +03:00
st cw1200: add const to hwbus_ops structures 2017-06-28 21:17:46 +03:00
ti wl1251: add a missing spin_lock_init() 2017-07-27 13:59:31 +03:00
zydas networking: make skb_push & __skb_push return void pointers 2017-06-16 11:48:40 -04:00
Kconfig
mac80211_hwsim.c networking: make skb_push & __skb_push return void pointers 2017-06-16 11:48:40 -04:00
mac80211_hwsim.h
Makefile
ray_cs.c
ray_cs.h
rayctl.h
rndis_wlan.c
wl3501_cs.c
wl3501.h