linux_dsm_epyc7002/drivers
Aaron Ma 6869a48a0a igc: fix page fault when thunderbolt is unplugged
[ Upstream commit 4b79959510e6612d80f8d86022e0cb44eee6f4a2 ]

After unplug thunderbolt dock with i225, pciehp interrupt is triggered,
remove call will read/write mmio address which is already disconnected,
then cause page fault and make system hang.

Check PCI state to remove device safely.

Trace:
BUG: unable to handle page fault for address: 000000000000b604
Oops: 0000 [#1] SMP NOPTI
RIP: 0010:igc_rd32+0x1c/0x90 [igc]
Call Trace:
igc_ptp_suspend+0x6c/0xa0 [igc]
igc_ptp_stop+0x12/0x50 [igc]
igc_remove+0x7f/0x1c0 [igc]
pci_device_remove+0x3e/0xb0
__device_release_driver+0x181/0x240

Fixes: 13b5b7fd6a ("igc: Add support for Tx/Rx rings")
Fixes: b03c49cde6 ("igc: Save PTP time before a reset")
Signed-off-by: Aaron Ma <aaron.ma@canonical.com>
Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-07-05 18:57:40 +02:00
..
accessibility
acpi ACPI: NFIT: Fix support for virtual SPA ranges 2024-07-05 18:54:10 +02:00
amba
android init: add dsm gpl source 2024-07-05 18:00:04 +02:00
ata libata: fix ata_pio_sector for CONFIG_HIGHMEM 2024-07-05 18:52:32 +02:00
atm atm: nicstar: register the interrupt handler in the right place 2021-07-19 09:44:52 +02:00
auxdisplay
base PCI/MSI: Protect msi_desc::masked for multi-MSI 2024-07-05 18:54:41 +02:00
bcma
block nbd: Aovid double completion of a request 2024-07-05 18:54:39 +02:00
bluetooth init: add dsm gpl source 2024-07-05 18:00:04 +02:00
bus bus: ti-sysc: Fix error handling for sysc_check_active_timer() 2024-07-05 18:55:45 +02:00
cdrom cdrom: gdrom: initialize global variable at init time 2021-05-26 12:06:55 +02:00
char tpm_ftpm_tee: Free and unregister TEE shared memory during kexec 2024-07-05 18:52:28 +02:00
clk clk: qcom: gdsc: Ensure regulator init state matches GDSC state 2024-07-05 18:55:58 +02:00
clocksource clocksource/arm_arch_timer: Improve Allwinner A64 timer workaround 2021-07-19 09:44:59 +02:00
connector
counter
cpufreq cpufreq: armada-37xx: forbid cpufreq for 1.2 GHz variant 2024-07-05 18:55:45 +02:00
cpuidle cpuidle: Fix ARM_QCOM_SPM_CPUIDLE configuration 2021-05-14 09:50:16 +02:00
crypto crypto: qce - fix error return code in qce_skcipher_async_req_handle() 2021-07-14 16:56:54 +02:00
dax
dca
devfreq PM / devfreq: Add missing error code in devfreq_add_device() 2021-07-14 16:56:11 +02:00
dio
dma dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available 2024-07-05 18:55:31 +02:00
dma-buf init: add dsm gpl source 2024-07-05 18:00:04 +02:00
edac EDAC/Intel: Do not load EDAC driver when running as a guest 2021-07-14 16:56:00 +02:00
eisa
extcon extcon: intel-mrfld: Sync hardware and software state on init 2021-07-19 09:45:00 +02:00
firewire
firmware efi/libstub: arm64: Double check image alignment at entry 2024-07-05 18:54:41 +02:00
fpga fpga: dfl: fme: Fix cpu hotplug issue in performance reporting 2024-07-05 18:52:30 +02:00
fsi fsi: Add missing MODULE_DEVICE_TABLE 2021-07-20 16:05:42 +02:00
gnss
gpio Revert "gpio: mpc8xxx: change the gpio interrupt flags." 2024-07-05 18:52:30 +02:00
gpu drm/amdgpu: Cancel delayed work when GFXOFF is disabled 2024-07-05 18:57:30 +02:00
greybus
hid HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT 2024-07-05 18:03:16 +02:00
hsi HSI: core: fix resource leaks in hsi_add_client_from_dt() 2021-05-14 09:50:28 +02:00
hv drivers: hv: Fix missing error code in vmbus_connect() 2021-07-14 16:55:59 +02:00
hwmon init: add dsm gpl source 2024-07-05 18:00:04 +02:00
hwspinlock
hwtracing intel_th: Wait until port is in reset before programming it 2021-07-20 16:05:46 +02:00
i2c i2c: dev: zero out array used for i2c reads from userspace 2024-07-05 18:53:59 +02:00
i3c Revert "i3c master: fix missing destroy_workqueue() on error in i3c_master_register" 2021-05-14 09:50:05 +02:00
ide
idle
iio iio: adc: Fix incorrect exit of for-loop 2024-07-05 18:53:59 +02:00
infiniband RDMA/bnxt_re: Remove unpaired rtnl unlock in bnxt_re_dev_init() 2024-07-05 18:57:40 +02:00
input Input: hideep - fix the uninitialized use in hideep_nvm_unlock() 2021-07-20 16:05:44 +02:00
interconnect interconnect: qcom: icc-rpmh: Ensure floor BW is enforced for all nodes 2024-07-05 18:52:31 +02:00
iommu iommu/vt-d: Fix incomplete cache flush in intel_pasid_tear_down_entry() 2024-07-05 18:55:47 +02:00
ipack ipack: tpci200: fix memory leak in the tpci200_register 2024-07-05 18:55:59 +02:00
irqchip init: add dsm gpl source 2024-07-05 18:00:04 +02:00
isdn mISDN: fix possible use-after-free in HFC_cleanup() 2021-07-19 09:44:38 +02:00
leds init: add dsm gpl source 2024-07-05 18:00:04 +02:00
lightnvm
macintosh
mailbox mailbox: qcom-ipcc: Fix IPCC mbox channel exhaustion 2021-07-14 16:56:53 +02:00
mcb
md md/raid10: properly indicate failure when ending a failed write request 2024-07-05 18:52:31 +02:00
media media: drivers/media/usb: fix memory leak in zr364xx_probe 2024-07-05 18:55:30 +02:00
memory memory: tegra: Fix compilation warnings on 64bit platforms 2021-07-25 14:36:14 +02:00
memstick memstick: rtsx_usb_ms: fix UAF 2021-07-14 16:55:53 +02:00
message
mfd init: add dsm gpl source 2024-07-05 18:00:04 +02:00
misc init: add dsm gpl source 2024-07-05 18:00:04 +02:00
mmc mmc: sdhci-iproc: Set SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN on BCM2711 2024-07-05 18:55:59 +02:00
most
mtd mtd: cfi_cmdset_0002: fix crash when erasing/writing AMD cards 2024-07-05 18:55:29 +02:00
mux
net igc: fix page fault when thunderbolt is unplugged 2024-07-05 18:57:40 +02:00
nfc nfc: nfcsim: fix use after free during module unload 2024-07-05 18:03:16 +02:00
ntb init: add dsm gpl source 2024-07-05 18:00:04 +02:00
nubus
nvdimm libnvdimm/region: Fix label activation vs errors 2024-07-05 18:54:10 +02:00
nvme nvme: fix nvme_setup_command metadata trace event 2024-07-05 18:07:38 +02:00
nvmem init: add dsm gpl source 2024-07-05 18:00:04 +02:00
of init: add dsm gpl source 2024-07-05 18:00:04 +02:00
opp
oprofile
parisc
parport
pci PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI 2024-07-05 18:55:59 +02:00
pcmcia pcmcia: i82092: fix a null pointer dereference bug 2024-07-05 18:52:30 +02:00
perf perf/arm-cmn: Fix invalid pointer when access dtc object sharing the same IRQ number 2021-07-14 16:56:08 +02:00
phy init: add dsm gpl source 2024-07-05 18:00:04 +02:00
pinctrl pinctrl: tigerlake: Fix GPIO mapping for newer version of software 2024-07-05 18:54:11 +02:00
platform platform/x86: pcengines-apuv2: Add missing terminating entries to gpio-lookup tables 2024-07-05 18:54:12 +02:00
pnp
power init: add dsm gpl source 2024-07-05 18:00:04 +02:00
powercap
pps
ps3
ptp ptp_pch: Restore dependency on PCI 2024-07-05 18:55:46 +02:00
pwm init: add dsm gpl source 2024-07-05 18:00:04 +02:00
rapidio rapidio: handle create_workqueue() failure 2021-05-26 12:06:52 +02:00
ras
regulator regulator: rtmv20: Fix wrong mask for strobe-polarity-high 2024-07-05 18:07:37 +02:00
remoteproc remoteproc: k3-r5: Fix an error message 2021-07-20 16:05:50 +02:00
reset init: add dsm gpl source 2024-07-05 18:00:04 +02:00
rpmsg rpmsg: qcom_glink_native: fix error return code of qcom_glink_rx_data() 2021-05-19 10:13:02 +02:00
rtc init: add dsm gpl source 2024-07-05 18:00:04 +02:00
s390 s390/sclp_vt220: fix console name to match device 2021-07-20 16:05:42 +02:00
sbus
scsi scsi: core: Fix hang of freezing queue between blocking and running device 2024-07-05 18:57:30 +02:00
sfi
sh
siox
slimbus slimbus: ngd: reset dma setup during runtime pm 2024-07-05 18:55:58 +02:00
soc soc / drm: mediatek: Move DDP component defines into mtk-mmsys.h 2024-07-05 18:55:45 +02:00
soundwire soundwire: stream: Fix test for DP prepare complete 2021-07-14 16:56:47 +02:00
spi spi: spi-mux: Add module info needed for autoloading 2024-07-05 18:55:30 +02:00
spmi
ssb ssb: Fix error return code in ssb_bus_scan() 2021-07-14 16:56:21 +02:00
staging staging: rtl8712: error handling refactoring 2024-07-05 18:52:29 +02:00
syno init: add dsm gpl source 2024-07-05 18:00:04 +02:00
target scsi: target: Fix protect handling in WRITE SAME(32) 2021-07-28 14:35:39 +02:00
tc
tee tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag 2024-07-05 18:53:10 +02:00
thermal init: add dsm gpl source 2024-07-05 18:00:04 +02:00
thunderbolt thunderbolt: Bond lanes only when dual_link_port != NULL in alloc_dev_default() 2021-07-14 16:56:44 +02:00
tty serial: 8250_pci: Avoid irq sharing for MSI(-X) interrupts. 2024-07-05 18:52:30 +02:00
uio uio_hv_generic: Fix a memory leak in error handling paths 2021-05-26 12:06:52 +02:00
usb usb: dwc3: gadget: Stop EP0 transfers during pullup disable 2024-07-05 18:57:30 +02:00
vdpa vdpa/mlx5: Avoid destroying MR on empty iotlb 2024-07-05 18:55:45 +02:00
vfio vfio/pci: Handle concurrent vma faults 2021-07-14 16:56:50 +02:00
vhost vhost: Fix the calculation in vhost_overflow() 2024-07-05 18:55:45 +02:00
video backlight: lm3630a: Fix return code of .update_status() callback 2021-07-20 16:05:45 +02:00
virt
virtio virtio: Protect vqs list access 2024-07-05 18:55:45 +02:00
visorbus visorbus: fix error return code in visorchipset_init() 2021-07-14 16:56:41 +02:00
vlynq
vme
w1 w1: ds2438: fixing bug that would always get page0 2021-07-20 16:05:39 +02:00
watchdog Revert "watchdog: iTCO_wdt: Account for rebooting on second timeout" 2024-07-05 18:07:51 +02:00
xen xen/events: Fix race in set_evtchn_to_irq 2024-07-05 18:54:39 +02:00
zorro
Kconfig init: add dsm gpl source 2024-07-05 18:00:04 +02:00
Makefile init: add dsm gpl source 2024-07-05 18:00:04 +02:00