linux/drivers/net/ethernet/broadcom
Vadim Fedorenko 927069d5c4 bnxt_en: fix module unload sequence
Recent updates to the PTP part of bnxt changed the way PTP FIFO is
cleared, skbs waiting for TX timestamps are now cleared during
ndo_close() call. To do clearing procedure, the ptp structure must
exist and point to a valid address. Module destroy sequence had ptp
clear code running before netdev close causing invalid memory access and
kernel crash. Change the sequence to destroy ptp structure after device
close.

Fixes: 8f7ae5a851 ("bnxt_en: improve TX timestamping FIFO configuration")
Reported-by: Taehee Yoo <ap420073@gmail.com>
Closes: https://lore.kernel.org/netdev/CAMArcTWDe2cd41=ub=zzvYifaYcYv-N-csxfqxUvejy_L0D6UQ@mail.gmail.com/
Signed-off-by: Vadim Fedorenko <vadfed@meta.com>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Reviewed-by: Michael Chan <michael.chan@broadcom.com>
Tested-by: Taehee Yoo <ap420073@gmail.com>
Link: https://patch.msgid.link/20250430170343.759126-1-vadfed@meta.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-01 06:58:20 -07:00
..
asp2 net: bcm: asp2: convert to phylib managed EEE 2025-01-15 13:17:56 -08:00
bnx2x treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
bnxt bnxt_en: fix module unload sequence 2025-05-01 06:58:20 -07:00
genet net: bcmgenet: revise suspend/resume 2025-03-07 19:33:48 -08:00
Kconfig lib/crc: remove CONFIG_LIBCRC32C 2025-04-04 11:31:42 -07:00
Makefile
b44.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
b44.h
bcm63xx_enet.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
bcm63xx_enet.h
bcm4908_enet.c net: ethernet: Switch back to struct platform_driver::remove() 2024-10-04 16:39:56 -07:00
bcm4908_enet.h
bcmsysport.c eth: bcmsysport: fix call balance of priv->clk handling routines 2024-12-30 17:33:46 -08:00
bcmsysport.h net: systemport: Move IO macros to header file 2024-10-28 15:54:37 -07:00
bgmac-bcma-mdio.c net: fill in MODULE_DESCRIPTION()s for Broadcom bgmac 2024-01-24 15:12:20 -08:00
bgmac-bcma.c net: fill in MODULE_DESCRIPTION()s for Broadcom bgmac 2024-01-24 15:12:20 -08:00
bgmac-platform.c net: ethernet: bgmac-platform: fix an OF node reference leak 2024-12-17 13:22:05 +01:00
bgmac.c net: broadcom: use ethtool string helpers 2024-11-06 17:51:02 -08:00
bgmac.h bgmac: reduce max frame size to support just MTU 1500 2025-01-29 18:57:42 -08:00
bnx2.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
bnx2.h
bnx2_fw.h
cnic.c net: cnic: Convert tasklet API to new bottom half workqueue mechanism 2024-07-31 18:59:46 -07:00
cnic.h net: cnic: Convert tasklet API to new bottom half workqueue mechanism 2024-07-31 18:59:46 -07:00
cnic_defs.h
cnic_if.h cnic,bnx2,bnx2x: use UIO_MEM_DMA_COHERENT 2024-03-07 21:52:59 +00:00
sb1250-mac.c net: ethernet: Switch back to struct platform_driver::remove() 2024-10-04 16:39:56 -07:00
tg3.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
tg3.h tg3: Increase buffer size for IRQ label 2024-10-17 21:24:24 -05:00
unimac.h