[PATCH v2 00/20] mwifiex: "reset" bugfixes and other refactorings

From: Brian Norris
Date: Mon Jul 24 2017 - 21:15:11 EST


Hello,

I've previously sent a stack of similar patches (with no cover letter),
starting at this patch:

[PATCH 01/14] mwifiex: pcie: properly synchronize, disable interrupts in driver callbacks
http://www.mail-archive.com/linux-kernel@xxxxxxxxxxxxxxx/msg1405062.html
https://patchwork.kernel.org/patch/9747263/

They fixed several bugs related to the "reset" codepath in this driver,
in which the driver tries to recover from a dead firmware, as well as making
various code improvements (e.g., refactorings, removing redunancy, improving
safety).

There were some valid criticisms of the first patch in that series (and some
real issues I hit with it later on in testing), and in the end, I believe
the concern there was not actually appearing in practice, so in order to
make some forward progress, I've dropped that patch (and related changes)
from this series. I've kept most of the rest and added a few bugfixes along
the way.

Thanks to Johannes for some brainstorming/ideas that yielded the patch
"mwifiex: unregister wiphy before freeing resources".

Regards,
Brian

Brian Norris (20):
mwifiex: reunite copy-and-pasted remove/reset code
mwifiex: reset interrupt status across device reset
mwifiex: pcie: don't allow cmd buffer reuse after reset
mwifiex: re-register wiphy across reset
mwifiex: unregister wiphy before freeing resources
mwifiex: don't short-circuit netdev notifiers on interface deletion
mwifiex: fixup init_channel_scan_gap error case
mwifiex: ensure "disable auto DS" struct is initialized
mwifiex: fix misnomers in mwifiex_free_lock_list()
mwifiex: make mwifiex_free_cmd_buffer() return void
mwifiex: utilize netif_tx_{wake,stop}_all_queues()
mwifiex: don't open-code ARRAY_SIZE()
mwifiex: drop 'add_tail' param from mwifiex_insert_cmd_to_pending_q()
mwifiex: pcie: remove unnecessary masks
mwifiex: pcie: unify MSI-X / non-MSI-X interrupt process
mwifiex: debugfs: allow card_reset() to cancel things
mwifiex: pcie: disable device DMA before unmapping/freeing buffers
mwifiex: pcie: remove unnecessary 'pdev' check
mwifiex: keep mwifiex_cancel_pending_ioctl() static
mwifiex: drop num CPU notice

drivers/net/wireless/marvell/mwifiex/cfg80211.c | 4 -
drivers/net/wireless/marvell/mwifiex/cfp.c | 4 +-
drivers/net/wireless/marvell/mwifiex/cmdevt.c | 15 +--
drivers/net/wireless/marvell/mwifiex/debugfs.c | 2 -
drivers/net/wireless/marvell/mwifiex/init.c | 32 ++----
drivers/net/wireless/marvell/mwifiex/main.c | 124 +++++++--------------
drivers/net/wireless/marvell/mwifiex/main.h | 7 +-
drivers/net/wireless/marvell/mwifiex/pcie.c | 100 +++--------------
drivers/net/wireless/marvell/mwifiex/scan.c | 5 +-
drivers/net/wireless/marvell/mwifiex/sta_cmd.c | 8 +-
drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c | 5 +-
drivers/net/wireless/marvell/mwifiex/sta_ioctl.c | 6 +-
12 files changed, 87 insertions(+), 225 deletions(-)

--
2.14.0.rc0.284.gd933b75aa4-goog