linux_dsm_epyc7002/drivers/net
Amitkumar Karwar 453b0c3f69 mwifiex: fix SDIO interrupt lost issue
601216e "mwifiex: process RX packets in SDIO IRQ thread directly"
introduced a command timeout issue which can be reproduced easily on
an AM33xx platform using a test application written by Daniel Mack:

https://gist.github.com/zonque/6579314

mwifiex_main_process() is called from both the SDIO handler and
the workqueue. In case an interrupt occurs right after the
int_status check, but before updating the mwifiex_processing flag,
this interrupt gets lost, resulting in a command timeout and
consequently a card reset.

Let main_proc_lock protect both int_status and mwifiex_processing
flag. This fixes the interrupt lost issue.

Cc: <stable@vger.kernel.org> # 3.7+
Reported-by: Sven Neumann <s.neumann@raumfeld.com>
Reported-by: Andreas Fenkart <andreas.fenkart@streamunlimited.com>
Tested-by: Daniel Mack <zonque@gmail.com>
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Paul Stewart <pstew@chromium.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2013-09-30 16:19:28 -04:00
..
appletalk PTR_RET is now PTR_ERR_OR_ZERO(): Replace most. 2013-07-15 11:25:01 +09:30
arcnet arcnet: cleanup sizeof parameter 2013-07-19 17:36:03 -07:00
bonding bonding: Make alb learning packet interval configurable 2013-09-15 22:20:44 -04:00
caif caif: add a sanity check to the tty name 2013-09-04 00:27:27 -04:00
can can: mscan: improve clock API use 2013-08-29 22:49:35 +02:00
cris
dsa
ethernet Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-09-19 13:57:28 -05:00
fddi drivers:net: Convert dma_alloc_coherent(...__GFP_ZERO) to dma_zalloc_coherent 2013-08-29 21:55:23 -04:00
hamradio
hippi
hyperv Drivers: hv: remove HV_DRV_VERSION 2013-08-02 11:34:30 +08:00
ieee802154
irda net/irda/mcs7780: fix memory leaks in mcs_net_open() 2013-09-12 23:43:56 -04:00
phy drivers: net: phy: cicada.c: clears warning Use #include <linux/io.h> instead of <asm/io.h> 2013-09-17 19:07:00 -04:00
plip
ppp ip: generate unique IP identificator if local fragmentation is allowed 2013-09-19 14:11:15 -04:00
slip
team net: team: inherit addr_assign_type along with dev_addr 2013-09-03 20:57:49 -04:00
usb net: usb: cdc_ether: use usb.h macros whenever possible 2013-09-16 21:38:00 -04:00
vmxnet3 VMXNET3: Add support for virtual IOMMU 2013-08-27 16:02:02 -04:00
wan net: wan: sbni: Fix incorrect placement of __initdata 2013-08-09 13:24:26 -07:00
wimax
wireless mwifiex: fix SDIO interrupt lost issue 2013-09-30 16:19:28 -04:00
xen-netback xen-netback: Don't destroy the netdev until the vif is shut down 2013-09-19 14:03:51 -04:00
dummy.c
eql.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c net loopback: Set loopback_dev to NULL when freed 2013-09-17 19:05:13 -04:00
macvlan.c macvlan: Move skb_clone check closer to call 2013-09-11 16:03:12 -04:00
macvtap.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-08-26 16:37:08 -04:00
Makefile
mdio.c
mii.c
netconsole.c netconsole: fix a deadlock with rtnl and netconsole's mutex 2013-09-19 14:15:53 -04:00
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c tuntap: correctly handle error in tun_set_iff() 2013-09-12 17:21:42 -04:00
veth.c veth: add vlan features 2013-07-19 17:36:03 -07:00
virtio_net.c virtio-net: Set RXCSUM feature if GUEST_CSUM is available 2013-09-03 21:36:41 -04:00
vxlan.c vxlan: Avoid creating fdb entry with NULL destination 2013-09-17 20:19:18 -04:00
xen-netfront.c xen-netfront: pull on receive skb may need to happen earlier 2013-07-17 12:51:19 -07:00