Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.kernel > #94480 > unrolled thread
| Started by | Yauhen <jsirex@gmail.com> |
|---|---|
| First post | 2026-10-15 12:10 +0200 |
| Last post | 2026-10-15 12:10 +0200 |
| Articles | 1 — 1 participant |
Back to article view | Back to linux.debian.kernel
Bug#1150966: linux-image-amd64: usb_core hangs after dockstation usb-c disconnect Yauhen <jsirex@gmail.com> - 2026-10-15 12:10 +0200
| From | Yauhen <jsirex@gmail.com> |
|---|---|
| Date | 2026-10-15 12:10 +0200 |
| Subject | Bug#1150966: linux-image-amd64: usb_core hangs after dockstation usb-c disconnect |
| Message-ID | <NOqzo-5Fi0-23@gated-at.bofh.it> |
Package: linux-image-amd64 Version: 7.2.9-1 Severity: normal Tags: upstream X-Debbugs-Cc: jsirex@gmail.com Dear Maintainer, There is issues when I connect and disconnect my laptop to/from dockstation. Machine details: - Lenovo ThinkPad P16s AMD - UEFI: R3HET21W (1.07) - Linux p16s 7.2.9+deb14-amd64 #1 SMP PREEMPT_DYNAMIC Debian 7.2.9-1 (2026-10-03) x86_64 GNU/Linux - Dockstation: Lenovo Thunderbolt 5 Smart - All firmware are up to date Use case 1: 1. connect laptop to a dockstation (usb-c) 2. send laptop sleep (suspend to ram) 3. disconnect laptop from dockstation Expected: nothing happens Actual: 1. Notebook wakes up 2. Screen immediately black 3. OS hangs completely 4. CPU 100%, overheating. Only hold power button for 10 sec helps (hard power off) Use case 2: I gave up on case 1 as it always fail. The only annoying workflow works for me now: 1. connect laptop to a dockstation (usb-c) 2. send laptop sleep (suspend to ram) 3. wake up laptop 4. wait 10 sec to it initialize properly 5. disconnect usb-c 6. wait 10 sec to it handle everything properly 7. send laptop sleep (suspend to ram) But 1 of 5 it still fail: 8. Laptop hangs for a 20 sec, no sleep, black screen 9. Wakes up Nothing will help from this point. lsusb -t hangs. Laptop is not going to sleep ever. And reboot will not help: when rebooting, kernel just hangs somewhere in the "before reboot" step forever. Only hard power off. Logs I could get: [304219.195412] PM: suspend entry (s2idle) [304219.215616] Filesystems sync: 0.020 seconds [304219.221001] Freezing user space processes [304219.238269] Freezing user space processes completed (elapsed 0.017 seconds) [304219.238294] OOM killer disabled. [304219.238296] Freezing remaining freezable tasks [304239.242589] Freezing remaining freezable tasks failed after 20.004 seconds (0 tasks refusing to freeze, wq_busy=1): [304239.242616] Showing freezable workqueues that are still busy: [304239.242620] workqueue events_freezable: flags=0x104 [304239.242623] pwq 6: cpus=1 node=0 flags=0x0 nice=0 active=0 refcnt=2 [304239.242632] inactive: pci_pme_list_scan [304239.242651] workqueue usb_hub_wq: flags=0x104 [304239.242654] pwq 82: cpus=20 node=0 flags=0x0 nice=0 active=1 refcnt=2 [304239.242659] in-flight: 663195:hub_event [usbcore] for 224s [304239.242784] Restarting kernel threads ... [304239.242892] Done restarting kernel threads. [304239.243744] OOM killer enabled. [304239.243745] Restarting tasks: Starting [304239.244415] Restarting tasks: Done [304239.244505] efivarfs: resyncing variable state [304239.294689] efivarfs: finished resyncing variable state [304239.294739] random: crng reseeded on system resumption [304239.320885] PM: suspend exit And details on task: [304951.600995] INFO: task kworker/20:1:663195 blocked for more than 845 seconds. [304951.601016] Tainted: G X 7.2.9+deb14-amd64 #1 Debian 7.2.9-1 [304951.601020] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [304951.601023] task:kworker/20:1 state:D stack:0 pid:663195 tgid:663195 ppid:2 task_flags:0x4208060 flags:0x00080000 [304951.601034] Workqueue: usb_hub_wq hub_event [usbcore] [304951.601075] Call Trace: [304951.601078] <TASK> [304951.601085] __schedule+0x4c5/0x1070 [304951.601099] schedule+0x27/0xa0 [304951.601102] schedule_timeout+0xdc/0x120 [304951.601107] wait_for_completion+0x9e/0x170 [304951.601112] xhci_configure_endpoint+0x189/0x590 [xhci_hcd] [304951.601136] xhci_check_bandwidth+0x19e/0x410 [xhci_hcd] [304951.601150] ? xhci_drop_endpoint+0x1ae/0x340 [xhci_hcd] [304951.601163] usb_hcd_alloc_bandwidth+0x25e/0x480 [usbcore] [304951.601195] usb_disable_device_endpoints+0x86/0xe0 [usbcore] [304951.601211] usb_disconnect+0xef/0x320 [usbcore] [304951.601239] hub_quiesce+0x75/0x100 [usbcore] [304951.601265] hub_event+0x817/0x1960 [usbcore] [304951.601284] ? psi_task_switch+0x1fa/0x3b0 [304951.601292] ? finish_task_switch.isra.0+0xc3/0x3d0 [304951.601300] ? __schedule+0x4cd/0x1070 [304951.601303] process_one_work+0x19e/0x370 [304951.601309] worker_thread+0x1a6/0x310 [304951.601312] ? __pfx_worker_thread+0x10/0x10 [304951.601315] kthread+0xe4/0x120 [304951.601319] ? __pfx_kthread+0x10/0x10 [304951.601321] ret_from_fork+0x2b1/0x340 [304951.601329] ? __pfx_kthread+0x10/0x10 [304951.601330] ret_from_fork_asm+0x1a/0x30 [304951.601339] </TASK> Expected, that even though external hardware could be crappy, disconnecting it should not lead to a broken kernel state. -- System Information: Debian Release: forky/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 7.2.9+deb14-amd64 (SMP w/24 CPU threads; PREEMPT) Kernel taint flags: TAINT_AUX Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages linux-image-amd64 depends on: ii linux-base-amd64 7.2.9-1 ii linux-image-7.2.9+deb14-amd64 7.2.9-1 linux-image-amd64 recommends no packages. linux-image-amd64 suggests no packages. -- no debconf information
Back to top | Article view | linux.debian.kernel
csiph-web