Thread (6 messages) 6 messages, 2 authors, 2021-08-20

Re: [PATCH net 1/4] igc: fix page fault when thunderbolt is unplugged

flat view

From: Jakub Kicinski <kuba@kernel.org>
Date: 2021-08-20 21:56:37

On Fri, 20 Aug 2021 08:59:12 -0700 Tony Nguyen wrote:
From: Aaron Ma <redacted>

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: 13b5b7fd6a4a ("igc: Add support for Tx/Rx rings")
Fixes: b03c49cde61f ("igc: Save PTP time before a reset")
Seems like a whack-a-mole that should be addressed a little bit more
systematically. Why not return ~0 if hw_addr is NULL? That's what would
happen first time timeout is hit, right? Please consider this.

Pulled, thanks!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help