octeon_ep: Fix host hang issue during device reboot
authorSathesh B Edara <sedara@marvell.com>
Tue, 29 Apr 2025 11:46:24 +0000 (04:46 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 1 May 2025 14:11:44 +0000 (07:11 -0700)
commit34f42736b325287a7b2ce37e415838f539767bda
tree8a6c1cd8ae7cc0171e9f5ed31a81edd1ebcae688
parenta179aad12badc43201cbf45d1e8ed2c1383c76b9
octeon_ep: Fix host hang issue during device reboot

When the host loses heartbeat messages from the device,
the driver calls the device-specific ndo_stop function,
which frees the resources. If the driver is unloaded in
this scenario, it calls ndo_stop again, attempting to free
resources that have already been freed, leading to a host
hang issue. To resolve this, dev_close should be called
instead of the device-specific stop function.dev_close
internally calls ndo_stop to stop the network interface
and performs additional cleanup tasks. During the driver
unload process, if the device is already down, ndo_stop
is not called.

Fixes: 5cb96c29aa0e ("octeon_ep: add heartbeat monitor")
Signed-off-by: Sathesh B Edara <sedara@marvell.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250429114624.19104-1-sedara@marvell.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/octeon_ep/octep_main.c