chaoskey interferes with suspend on thinkpad

Bug #1762816 reported by Mark Eichin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
Medium
Unassigned

Bug Description

Thinkpad T450s, docking station, Altus Metrum Chaoskey plugged into the docking station - suspend fails often (more than half the time, maybe not 100% but easily duplicated in my setup) in that it doesn't seem to go all the way down - and on wakeup, lsusb output doesn't update, `lsusb -t` hangs when run. It *may* require "suspend, undock, unsuspend" but I'm not convinced...

Interesting logs include a "blocked for more than 120 seconds" traceback after restore that goes through chaoskey_disconnect even though the laptop is undocked so it's no longer attached:

[17038.103142] Call Trace:
  __schedule+0x297/0x8b0
  schedule+0x2c/0x80
  schedule_timeout+0x1cf/0x350
  ? ttwu_do_activate+0x7a/0x90
  wait_for_completion+0xba/0x140
  ? wake_up_q+0x80/0x80
  hwrng_unregister+0x8f/0xa0
*** chaoskey_disconnect+0xbe/0x110 [chaoskey] ***
  usb_unbind_interface+0x77/0x290
  device_release_driver_internal+0x15b/0x220
  device_release_driver+0x12/0x20
  bus_remove_device+0xec/0x160
  device_del+0x13d/0x360
  ? usb_remove_ep_devs+0x1f/0x30
  usb_disable_device+0x9f/0x270
  usb_disconnect+0xc6/0x270
  hub_quiesce+0x48/0xa0
  hub_event+0xfb/0xb10
  process_one_work+0x1de/0x410
  worker_thread+0x32/0x410
  kthread+0x121/0x140
  ? process_one_work+0x410/0x410
  ? kthread_create_worker_on_cpu+0x70/0x70
  ? do_syscall_64+0x73/0x130
  ? SyS_exit_group+0x14/0x20
  ret_from_fork+0x35/0x40

Kernel is most recently `4.15.0-13-generic #14-Ubuntu` but it's been going on for the last month of bionic, and *possibly* longer but I only recently caught that the Chaoskey was related.

$ lsb_release -rd
Description: Ubuntu Bionic Beaver (development branch)
Release: 18.04

$ uname -a
Linux workbench 4.15.0-13-generic #14-Ubuntu SMP Sat Mar 17 13:44:27 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

$ dpkg --status linux-image-4.15.0-13-generic
Package: linux-image-4.15.0-13-generic
Status: install ok installed
Priority: optional
Section: kernel
Installed-Size: 72167
Maintainer: Ubuntu Kernel Team <email address hidden>
Architecture: amd64
Source: linux
Version: 4.15.0-13.14
Provides: aufs-dkms, fuse-module, ivtv-modules, kvm-api-4, linux-image, redhat-cluster-modules, spl-dkms, spl-modules, virtualbox-guest-modules, zfs-dkms, zfs-modules
Depends: kmod
Recommends: grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub | lilo, initramfs-tools | linux-initramfs-tool
Suggests: fdutils, linux-doc-4.15.0 | linux-source-4.15.0, linux-tools, linux-headers-4.15.0-13-generic
Description: Linux kernel image for version 4.15.0 on 64 bit x86 SMP
 This package contains the Linux kernel image for version 4.15.0 on
 64 bit x86 SMP.
 .
 Also includes the corresponding System.map file, the modules built by the
 packager, and scripts that try to ensure that the system is not left in an
 unbootable state after an update.
 .
 Supports Generic processors.
 .
 Geared toward desktop and server systems.
 .
 You likely do not want to install this package directly. Instead, install
 the linux-generic meta-package, which will ensure that upgrades work
 correctly, and that supporting packages are also installed.

Tags: bionic
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1762816

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: bionic
Revision history for this message
Mark Eichin (eichin-gmail) wrote :

On inspection of apport-collect output, it doesn't appear to filter out serial numbers or SSIDs, so I can't submit it. Also, it seems to have left out any of the logs where the tracebacks mentioned above were included; I'll add at least a useful chunk of kern.log surrounding the problem as an attachment.

Revision history for this message
Mark Eichin (eichin-gmail) wrote :

big chunk of kern.log with addresses and serial numbers elided.

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Mark Eichin (eichin-gmail) wrote :

Marked confirmed per auto-comment #1 but I'm happy to add other logs on request (not going to audit 11,000 lines of apport output if I can at all avoid it, though.)

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Did this issue start happening after an update/upgrade? Was there a prior kernel version where you were not having this particular problem?

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v4.16 kernel[0].

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[0] http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.