twx-linux/drivers
Thinh Tran bf23ffc8a9 bnx2x: new flag for track HW resource allocation
While injecting PCIe errors to the upstream PCIe switch of
a BCM57810 NIC, system hangs/crashes were observed.

After several calls to bnx2x_tx_timout() complete,
bnx2x_nic_unload() is called to free up HW resources
and bnx2x_napi_disable() is called to release NAPI objects.
Later, when the EEH driver calls bnx2x_io_slot_reset() to
complete the recovery process, bnx2x attempts to disable
NAPI again by calling bnx2x_napi_disable() and freeing
resources which have already been freed, resulting in a
hang or crash.

Introduce a new flag to track the HW resource and NAPI
allocation state, refactor duplicated code into a single
function, check page pool allocation status before freeing,
and reduces debug output when a TX timeout event occurs.

Reviewed-by: Manish Chopra <manishc@marvell.com>
Tested-by: Abdul Haleem <abdhalee@in.ibm.com>
Tested-by: David Christensen <drc@linux.vnet.ibm.com>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Tested-by: Venkata Sai Duggi <venkata.sai.duggi@ibm.com>
Signed-off-by: Thinh Tran <thinhtr@linux.vnet.ibm.com>
Link: https://lore.kernel.org/r/20230818161443.708785-2-thinhtr@linux.vnet.ibm.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-08-22 17:07:40 -07:00
..
accel One EPROBE_DEFER handling fix for the JDI LT070ME05000, a timing fix for 2023-08-18 06:08:58 +10:00
accessibility
acpi platform-drivers-x86 for v6.5-4 2023-08-13 08:50:26 -07:00
amba
android binder: fix memory leak in binder_init() 2023-08-04 15:25:01 +02:00
ata ata,scsi: do not issue START STOP UNIT on resume 2023-08-02 17:01:12 +09:00
atm
auxdisplay drm changes for 6.5-rc1: 2023-06-29 11:00:17 -07:00
base driver core: cpu: Fix the fallback cpu_show_gds() name 2023-08-11 20:36:02 +02:00
bcma
block block-6.5-2023-08-11 2023-08-11 12:14:08 -07:00
bluetooth Bluetooth: btusb: Fix bluetooth on Intel Macbook 2014 2023-07-20 11:26:56 -07:00
bus SoC fixes for 6.5, part 1 2023-07-06 09:56:53 -07:00
cdrom cdrom/gdrom: Fix build error 2023-06-29 08:09:31 -06:00
cdx
char tpm_tis: Opt-in interrupts 2023-08-12 02:36:28 +03:00
clk Amlogic clock fixes for v6.5 2023-07-26 11:47:57 -07:00
clocksource RISC-V Patches for the 6.5 Merge Window, Part 1 2023-06-30 09:37:26 -07:00
comedi
connector
counter First set of Counter fixes for 6.5 2023-08-04 15:17:29 +02:00
cpufreq cpufreq: amd-pstate: fix global sysfs attribute type 2023-08-07 19:41:48 +02:00
cpuidle cpuidle: psci: Move enabling OSI mode after power domains creation 2023-08-08 16:07:01 +02:00
crypto s390 updates for 6.5 merge window part 2 2023-07-06 13:18:30 -07:00
cxl cxl/memdev: Only show sanitize sysfs files when supported 2023-07-28 13:16:54 -06:00
dax dax: enable dax fault handler to report VM_FAULT_HWPOISON 2023-06-26 07:54:23 -06:00
dca
devfreq
dio
dma dmaengine: xilinx: xdma: Fix typo 2023-08-07 00:01:41 +05:30
dma-buf dma-buf/dma-resv: Stop leaking on krealloc() failure 2023-07-15 13:57:30 +02:00
edac - Add initial support for RAS hardware found on AMD server GPUs (MI200). 2023-06-26 15:09:18 -07:00
eisa
extcon
firewire firewire: net: fix use after free in fwnet_finish_incoming_packet() 2023-06-24 14:03:46 +09:00
firmware firmware: arm_scmi: Fix chan_free cleanup on SMC 2023-07-20 13:31:58 +01:00
fpga Char/Misc and other driver subsystem updates for 6.5-rc1 2023-07-03 12:46:47 -07:00
fsi
gnss
gpio gpio: ws16c48: Fix off-by-one error in WS16C48 resource region extent 2023-08-11 21:31:59 +02:00
gpu drm/qxl: fix UAF on handle creation 2023-08-18 06:57:38 +10:00
greybus
hid for-linus-2023071101 2023-07-12 11:56:22 -07:00
hsi
hte
hv x86/hyperv: Improve code for referencing hyperv_pcpu_input_arg 2023-06-28 17:53:25 +00:00
hwmon hwmon: (aquacomputer_d5next) Add selective 200ms delay after sending ctrl report 2023-08-09 21:09:47 -07:00
hwspinlock
hwtracing Char/Misc and other driver subsystem updates for 6.5-rc1 2023-07-03 12:46:47 -07:00
i2c Part 2 of I2C patches for 6.5 2023-07-08 12:28:00 -07:00
i3c
idle Revert "intel_idle: Add support for using intel_idle in a VM guest using just hlt" 2023-07-19 20:10:03 +02:00
iio iio: cros_ec: Fix the allocation size for cros_ec_command 2023-07-29 12:21:21 +01:00
infiniband RDMA/bnxt_re: Initialize dpi_tbl_lock mutex 2023-08-10 16:35:54 -03:00
input ARM: SoC changes for 6.5 2023-06-29 15:28:33 -07:00
interconnect interconnect: qcom: sa8775p: add enable_mask for bcm nodes 2023-07-11 15:44:43 +03:00
iommu iommufd: Set end correctly when doing batch carry 2023-07-27 11:27:20 -03:00
ipack
irqchip - Work around an erratum on GIC700, where a race between a CPU 2023-07-30 10:59:19 -07:00
isdn mISDN: Update parameter type of dsp_cmx_send() 2023-08-03 18:08:32 -07:00
leds leds: trigger: netdev: rename 'hw_control' sysfs entry to 'offloaded' 2023-08-22 11:02:29 -07:00
macintosh
mailbox mailbox: ti-msgmgr: Fill non-message tx data fields with 0x0 2023-06-30 17:35:45 -05:00
mcb
md dm cache policy smq: ensure IO doesn't prevent cleaner policy progress 2023-07-25 11:55:50 -04:00
media hardening fixes for v6.5-rc6 2023-08-08 14:59:49 -07:00
memory memory: tegra: make icc_set_bw return zero if BWMGR not supported 2023-07-25 22:09:20 +02:00
memstick
message
mfd - New Drivers 2023-07-03 10:55:04 -07:00
misc misc: tps6594-esm: Disable ESM for rev 1 PMIC 2023-08-04 15:52:51 +02:00
mmc mmc: sdhci-f-sdh30: Replace with sdhci_pltfm 2023-07-14 11:28:55 +02:00
most
mtd mtd: rawnand: fsl_upm: Fix an off-by one test in fun_exec_op() 2023-07-27 16:54:23 +02:00
mux
net bnx2x: new flag for track HW resource allocation 2023-08-22 17:07:40 -07:00
nfc
ntb ntb: hw: amd: Fix debugfs_create_dir error checking 2023-07-08 13:55:44 -04:00
nubus
nvdimm dax: enable dax fault handler to report VM_FAULT_HWPOISON 2023-06-26 07:54:23 -06:00
nvme block-6.5-2023-08-11 2023-08-11 12:14:08 -07:00
nvmem
of of: Preserve "of-display" device name for compatibility 2023-07-11 16:33:01 -06:00
opp OPP: Properly propagate error along when failing to get icc_path 2023-06-27 07:35:14 +05:30
parisc parisc: Move proc_mckinley_root and proc_runway_root to sba_iommu 2023-08-10 22:22:03 +02:00
parport parport: gsc: remove DMA leftover code 2023-08-03 14:40:37 +02:00
pci pci-v6.5-fixes-1 2023-08-11 09:39:17 -07:00
pcmcia
peci
perf perf: RISC-V: Remove PERF_HES_STOPPED flag checking in riscv_pmu_start() 2023-07-12 07:41:23 -07:00
phy phy: hisilicon: Fix an out of bounds check in hisi_inno_phy_probe() 2023-07-24 16:23:37 +05:30
pinctrl pinctrl: renesas: Fixes for v6.5 2023-07-13 00:05:52 +02:00
platform platform/x86: lenovo-ymc: Only bind on machines with a convertible DMI chassis-type 2023-08-13 14:50:25 +02:00
pnp
power power supply and reset changes for the 6.5 series 2023-07-03 17:23:16 -07:00
powercap powercap: intel_rapl: Fix a sparse warning in TPMI interface 2023-08-01 13:45:08 +02:00
pps
ps3
ptp ptp: Make max_phase_adjustment sysfs device attribute invisible when not supported 2023-07-03 13:17:25 -07:00
pwm pwm: Changes for v6.5-rc1 2023-07-05 12:55:06 -07:00
rapidio
ras
regulator regulator: qcom-rpmh: Fix LDO 12 regulator for PM8550 2023-08-07 15:13:27 +01:00
remoteproc remoteproc updates for v6.5 2023-07-03 17:03:05 -07:00
reset ARM: SoC drivers for 6.5 2023-06-29 15:22:19 -07:00
rpmsg
rtc RTC for 6.5 2023-07-03 10:43:10 -07:00
s390 Including fixes from bpf and wireless. 2023-08-03 14:00:02 -07:00
sbus
scsi SCSI fixes on 20230813 2023-08-13 08:43:26 -07:00
sh
siox
slimbus
soc soc: imx: imx8mp-blk-ctrl: register HSIO PLL clock as bus_power_dev child 2023-07-19 15:44:02 +08:00
soundwire soundwire: amd: Fix a check for errors in probe() 2023-07-13 11:09:07 +05:30
spi spi: spi-qcom-qspi: Add mem_ops to avoid PIO for badly sized reads 2023-07-26 12:47:20 +01:00
spmi
ssb
staging Staging driver fixes for 6.5-rc4 2023-07-30 11:47:56 -07:00
target SCSI misc on 20230708 2023-07-08 12:35:18 -07:00
tc
tee ARM: SoC drivers for 6.5 2023-06-29 15:22:19 -07:00
thermal powercap: intel_rapl: Fix a sparse warning in TPMI interface 2023-08-01 13:45:08 +02:00
thunderbolt thunderbolt: Fix memory leak in tb_handle_dp_bandwidth_request() 2023-08-04 16:17:47 +03:00
tty TTY/Serial fixes for 6.5-rc4 2023-07-30 11:51:36 -07:00
ufs scsi: ufs: renesas: Fix private allocation 2023-08-07 21:34:08 -04:00
uio
usb usb: dwc3: Properly handle processing of pending events 2023-08-04 14:57:23 +02:00
vdpa pds_vdpa: fix up debugfs feature bit printing 2023-08-10 15:51:46 -04:00
vfio VFIO updates for v6.5-rc1 2023-06-30 15:22:09 -07:00
vhost vhost-scsi: Rename vhost_scsi_iov_to_sgl 2023-08-10 15:24:28 -04:00
video fbdev: Explicitly include correct DT includes 2023-07-20 07:56:30 +02:00
virt workqueue: Ordered workqueue creation cleanups 2023-06-27 16:46:06 -07:00
virtio virtio-mem: check if the config changed before fake offlining memory 2023-08-10 15:51:46 -04:00
vlynq
w1
watchdog watchdog: sp5100_tco: support Hygon FCH/SCH (Server Controller Hub) 2023-06-26 14:30:07 +02:00
xen xen: speed up grant-table reclaim 2023-07-27 07:53:12 +02:00
zorro
Kconfig
Makefile