]> git.karo-electronics.de Git - karo-tx-linux.git/commit
qlcnic: Fix mailbox completion handling during spurious interrupt
authorRajesh Borundia <rajesh.borundia@qlogic.com>
Tue, 8 Mar 2016 07:39:58 +0000 (02:39 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Apr 2016 06:42:02 +0000 (15:42 +0900)
commitb39af5aa111dd05472c8b1b0d3f114f4e34f61fe
tree9ec71584c06f6d80c9a883bfc29acacbd2fa0146
parent12dd6d869b22ae114f81962e346cd5428b358b72
qlcnic: Fix mailbox completion handling during spurious interrupt

[ Upstream commit 819bfe764dceec2f6b4551768453f374b4c60443 ]

o While the driver is in the middle of a MB completion processing
and it receives a spurious MB interrupt, it is mistaken as a good MB
completion interrupt leading to premature completion of the next MB
request. Fix the driver to guard against this by checking the current
state of MB processing and ignore the spurious interrupt.
Also added a stats counter to record this condition.

Signed-off-by: Rajesh Borundia <rajesh.borundia@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/qlogic/qlcnic/qlcnic.h
drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c