WSL2-Linux-Kernel/drivers/thunderbolt
Mika Westerberg 23ce6ba3b9 thunderbolt: Mark XDomain as unplugged when router is removed
commit e2006140ad2e01a02ed0aff49cc2ae3ceeb11f8d upstream.

I noticed that when we do discrete host router NVM upgrade and it gets
hot-removed from the PCIe side as a result of NVM firmware authentication,
if there is another host connected with enabled paths we hang in tearing
them down. This is due to fact that the Thunderbolt networking driver
also tries to cleanup the paths and ends up blocking in
tb_disconnect_xdomain_paths() waiting for the domain lock.

However, at this point we already cleaned the paths in tb_stop() so
there is really no need for tb_disconnect_xdomain_paths() to do that
anymore. Furthermore it already checks if the XDomain is unplugged and
bails out early so take advantage of that and mark the XDomain as
unplugged when we remove the parent router.

Cc: stable@vger.kernel.org
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-09-04 13:23:15 +02:00
..
Kconfig
Makefile
acpi.c
cap.c
ctl.c
ctl.h
debugfs.c
dma_port.c
dma_port.h
dma_test.c thunderbolt: dma_test: Use correct value for absent rings when creating paths 2023-06-21 15:59:15 +02:00
domain.c
eeprom.c
icm.c thunderbolt: Workaround an IOMMU fault on certain systems with Intel Maple Ridge 2023-10-19 23:05:36 +02:00
lc.c
nhi.c thunderbolt: Mask ring interrupt on Intel hardware as well 2023-06-21 15:59:15 +02:00
nhi.h
nhi_ops.c
nhi_regs.h thunderbolt: Clear registers properly when auto clear isn't in use 2023-05-24 17:36:54 +01:00
nvm.c
path.c thunderbolt: Tear down existing tunnels when resuming from hibernate 2022-11-16 09:58:12 +01:00
property.c
quirks.c
retimer.c thunderbolt: Read retimer NVM authentication status prior tb_retimer_set_inbound_sbtx() 2023-08-26 14:23:24 +02:00
sb_regs.h thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access 2023-03-30 12:47:52 +02:00
switch.c thunderbolt: Mark XDomain as unplugged when router is removed 2024-09-04 13:23:15 +02:00
tb.c thunderbolt: Avoid notify PM core about runtime PM resume 2024-04-27 17:05:26 +02:00
tb.h thunderbolt: Avoid notify PM core about runtime PM resume 2024-04-27 17:05:26 +02:00
tb_msgs.h
tb_regs.h thunderbolt: Explicitly enable lane adapter hotplug events at startup 2022-10-26 12:34:32 +02:00
test.c
tmu.c
tunnel.c thunderbolt: Use correct function to calculate maximum USB3 link rate 2023-01-24 07:22:46 +01:00
tunnel.h thunderbolt: Tear down existing tunnels when resuming from hibernate 2022-11-16 09:58:12 +01:00
usb4.c thunderbolt: Avoid notify PM core about runtime PM resume 2024-04-27 17:05:26 +02:00
usb4_port.c
xdomain.c