summaryrefslogtreecommitdiff
path: root/net/core/netevent.c
diff options
context:
space:
mode:
authorVenkata Sudheer Kumar Bhavaraju <vbhavaraju@marvell.com>2022-02-09 11:28:14 -0800
committerDavid S. Miller <davem@davemloft.net>2022-02-10 15:27:44 +0000
commitca2d5f1ff05955da9506055e88c4bbb71da190f1 (patch)
tree04222fd40920a60b936abde6b8d9aa542761a090 /net/core/netevent.c
parent57ea56b05b7fddd460a74931e214ee2114fe97fc (diff)
qed: prevent a fw assert during device shutdown
Device firmware can assert if the device shutdown path in driver encounters an async. events from mfw (processed in qed_mcp_handle_events()) after qed_mcp_unload_req() returns. A call to qed_mcp_unload_req() currently marks the device as inactive and thus stops any new events, but there is a windows where in-flight events might still be received by the driver. To prevent this race condition, atomically set QED_MCP_BYPASS_PROC_BIT in qed_mcp_unload_req() to make sure qed_mcp_handle_events() ignores all events. Wait for any event that might already be in-process to complete by monitoring QED_MCP_IN_PROCESSING_BIT. Signed-off-by: Pravin Kumar Ganesh Dhende <pdhende@marvell.com> Signed-off-by: Venkata Sudheer Kumar Bhavaraju <vbhavaraju@marvell.com> Signed-off-by: Alok Prasad <palok@marvell.com> Signed-off-by: Ariel Elior <aelior@marvell.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/netevent.c')
0 files changed, 0 insertions, 0 deletions