apport failed to identify libinput, the installed package was actually
libinput10:amd64

** Description changed:

  Synaptics SYNA8022 (06CB:CE67) I2C-HID touchpad reports corrupted
- coordinates, then wedges the I2C bus ("lost arbitration"); only recovers
- after a power cycle of the device (s2idle suspend/resume or full power-
+ coordinates, then wedges the I2C bus ("lost arbitration"); recovers only
+ after the device is power-cycled (s2idle suspend/resume or full power-
  off)
  
  == Summary ==
  
  The built-in touchpad on a ThinkPad P14s Gen 6 (21QTCTO1WW) stops responding
  completely after anywhere from ~15 seconds to ~1.5 hours of use. Before each
  failure the touchpad emits physically impossible coordinate jumps (libinput:
  "kernel bug: Touch jump detected and discarded"), followed by an I2C 
controller
  abort ("i2c_dw_handle_tx_abort: lost arbitration") and continuous
  "controller timed out" / "failed to set a report to device: -110" errors.
  Once wedged, no evdev events are produced at all.
  
- The device does not recover via driver reload or warm reboot. It recovers only
- when the touchpad loses power: closing/opening the lid (s2idle suspend/resume,
- even a ~22 s suspend) or a full power-off. After recovery the coordinate
- corruption starts again immediately and the bus wedges again later.
+ The device does not recover via modprobe or warm reboot. It recovers when the
+ touchpad loses power: closing/opening the lid (s2idle suspend/resume, even a
+ ~22 s suspend) or a full power-off. After recovery the coordinate corruption
+ starts again immediately and the bus wedges again later.
  
  I suspect a hardware fault in the touchpad module (evidence below), but I'm
  filing this so the kernel-side behaviour can be reviewed: the I2C DesignWare
  controller/i2c-hid stack never recovers from the stuck bus, and a warm reboot
- leaves the device missing completely.
+ leaves the device missing completely with nothing logged.
+ 
+ All times below are UTC.
  
  == Hardware / software ==
  
  Machine:   LENOVO ThinkPad P14s Gen 6, 21QTCTO1WW
- BIOS:      R2WET36W (1.18), 08/06/2025 (unchanged throughout)
+ BIOS:      R2WET36W (1.18), 08/06/2025 (unchanged on every boot in the logs)
  Touchpad:  SYNA8022:00 06CB:CE67, I2C HID v1.00, driver hid-multitouch
             
/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-SYNA8022:00
  OS:        Ubuntu 26.04 LTS
- Kernel:    7.0.0-38-generic (first booted 2026-10-19); problem symptoms first
+ Kernel:    7.0.0-38-generic (first booted 2026-10-19 17:11); the symptoms 
first
             appeared on 7.0.0-30-generic
- libinput:  1.31.1-1ubuntu1.2
- Power:     on battery (AC offline) during all failures; battery 98% of design
-            capacity, 24 cycles
+ libinput:  1.31.1-1ubuntu1.2 (unchanged since 2026-09-15)
+ Power:     on battery (AC adapter off-line) during all failures; battery 98% 
of
+            design capacity, 24 cycles
  
- == Kernel log at failure (example, cold boot 2026-10-20) ==
+ == Kernel log at failure (example: cold boot 2026-10-20) ==
  
- 15:33:07  hid-multitouch 0018:06CB:CE67.0001: input,hidraw0: I2C HID v1.00 
Mouse [SYNA8022:00 06CB:CE67] on i2c-SYNA8022:00
- 15:33:22  libinput error: event5 - SYNA8022:00 06CB:CE67 Touchpad: kernel 
bug: Touch jump detected and discarded.  (x5, then rate-limited)
- 15:33:25  i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost 
arbitration
- 15:33:26  i2c_designware i2c_designware.0: controller timed out
- 15:33:47  i2c_designware i2c_designware.0: controller timed out
- 15:33:47  i2c_hid_acpi i2c-SYNA8022:00: failed to set a report to device: 
-110   (repeats)
+ 21:33:07  hid-multitouch 0018:06CB:CE67.0001: input,hidraw0: I2C HID v1.00 
Mouse [SYNA8022:00 06CB:CE67] on i2c-SYNA8022:00
+ 21:33:22  libinput error: event5 - SYNA8022:00 06CB:CE67 Touchpad: kernel 
bug: Touch jump detected and discarded.  (x5, then rate-limited)
+ 21:33:25  i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost 
arbitration
+ 21:33:26  i2c_designware i2c_designware.0: controller timed out
+ 21:33:47  i2c_designware i2c_designware.0: controller timed out
+ 21:33:47  i2c_hid_acpi i2c-SYNA8022:00: failed to set a report to device: 
-110   (repeats)
  
- Another occurrence (2026-10-20 17:14 EDT) also logged:
+ The occurrence at 2026-10-20 21:11 also logged:
    i2c_hid_acpi i2c-SYNA8022:00: failed to change power setting.
  
- == Occurrences ==
+ == Occurrences of the bus wedge ==
  
- 2026-10-20 11:29 EDT  lost arbitration (after ~17 min awake following resume)
- 2026-10-20 17:11 EDT  lost arbitration -> timeouts -> "failed to change power 
setting"
- 2026-10-20 15:33 MDT  lost arbitration 16 s after a cold boot
- 2026-10-21 08:36 MDT  lost arbitration ~75 min after resume from overnight 
suspend
+ 2026-10-20 15:29  lost arbitration, ~17 min after resume
+ 2026-10-20 21:11  lost arbitration -> timeouts -> "failed to change power 
setting",
+                   ~16 min after resume
+ 2026-10-20 21:33  lost arbitration 16 s after a cold boot
+ 2026-10-21 14:36  lost arbitration ~75 min after resume from overnight suspend
  
- Touch-jump errors per day (journal from Jul 8, syslog from Sep 13):
-   Jul 15: 1, Jul 31: 6, Sep 13 - Oct 16: 0,
-   Oct 17: 5 (kernel 7.0.0-30), Oct 19: 15, Oct 20: 53, Oct 21: continuing
- (counts are a lower bound; libinput rate-limits to 5 per 8 minutes)
+ Touch-jump errors per UTC day (systemd journal, continuous coverage 2026-07-08
+ to 2026-10-21):
+   Jul 15: 1
+   Jul 31: 6
+   Aug 1 - Oct 17: 0
+   Oct 18: 5   (first at 00:04, 11 s after undocking; kernel 7.0.0-30)
+   Oct 19: 15
+   Oct 20: 53
+   Oct 21: 35  (until 14:43)
+ These are lower bounds: libinput rate-limits the message to 5 per 8 minutes.
  
  == Recovery behaviour ==
  
  modprobe i2c_hid_acpi / hid_multitouch   -> no effect
- warm reboot (2026-10-20 15:18)           -> touchpad NOT enumerated at all on 
next
+ warm reboot (2026-10-20 21:18)           -> touchpad NOT enumerated at all on 
the next
                                              boot (no SYNA8022 lines in dmesg, 
no errors)
- full power-off + boot                    -> works, failed again after 16 s
+ full power-off + boot (21:33)            -> works, failed again after 16 s
  lid close/open (s2idle), even ~22 s      -> works again; no i2c/hid messages 
logged on
                                              resume; corruption resumes 
immediately
+ i2c_hid_acpi unbind/bind (2026-10-20     -> device re-enumerated as 
0018:06CB:CE67.0003
+   16:25:38, ~5 min after a resume)          and reported events 7 s later. 
This ran
+                                             after a suspend/resume, so it is 
unclear
+                                             whether the resume or the rebind 
restored it.
  
  == Evidence from evdev captures (libinput record on /dev/input/event5)
  ==
  
- While wedged (2026-10-20 15:35, 2026-10-21 08:37): 30 s capture with finger
+ While wedged (2026-10-20 21:35, 2026-10-21 14:37): 30 s capture with finger
  movement recorded 0 events ("No events recorded").
  
- Right after a lid-cycle recovery (2026-10-21 08:43): 4136 frames in 29.4 s.
+ Right after a lid-cycle recovery (2026-10-21 14:43): 4136 frames in 29.4 s.
  Frame cadence is steady (median 6.8 ms, matching MSC_TIMESTAMP increments
  of 6800 us; no dropped reports). Slot, tracking ID and timestamp data are all
  consistent, but 19 single-frame position jumps of 2.8-7.8 mm occurred during
  ordinary one-finger movement. The capture timestamps match the libinput
  "Touch jump" journal entries to the millisecond. Two patterns:
  
   (a) jump then hold - finger moving ~0.7 mm/frame jumps 7 mm in one frame:
       x=104 y=261  d=( -3,  +8)
       x= 98 y=345  d=( -6, +84)   <- 7 mm in 6.8 ms
       x= 98 y=346  d=( +0,  +1)
  
   (b) single bad sample that returns to the trajectory:
       x=1059  d=(+14, -5)
       x=1013  d=(-46,+15)         <- outlier
       x=1074  d=(+61,-20)
       x=1094  d=(+20, -7)
  
  (units: 12 units/mm, ABS_MT_POSITION_X/Y)
+ 
  == Analysis ==
  
  - The corrupted positions are inside otherwise well-formed, evenly timed HID
    reports, so they seem to come from the touchpad's own position reporting
    rather than I2C transfer corruption or libinput.
  - Not charger noise: all failures occurred on battery.
  - No BIOS, firmware (fwupd), libinput or kernel change coincides with onset
-   (Oct 17, kernel 7.0.0-30, which had been running since Sep 2).
+   (2026-10-18 00:04 UTC, on kernel 7.0.0-30, which had been running since
+   2026-09-02).
  - The device holding the bus ("lost arbitration" on a single-device bus) and
-   only recovering on power removal suggests the touchpad controller hangs.
+   recovering after power removal suggests the touchpad controller hangs.
  
  Kernel-side questions:
   1. i2c_designware does not appear to attempt bus recovery after
      "lost arbitration"; the bus stays dead until the device is powered off.
   2. After a warm reboot the device is not enumerated at all and nothing is
      logged; a probe failure message would help diagnosis.
   3. Not yet tested: whether 7.0.0-30-generic changes how often the bus wedges
      (all bus lockups so far were on 7.0.0-38; touch jumps occur on both).
  
  == Workaround ==
  
  Close and reopen the lid (s2idle suspend/resume) to restore the touchpad
  temporarily. TrackPoint and external mice are unaffected.
  
- == Attached / available ==
+ == Attached ==
  
+ - trackpad-log-excerpts.txt  (relevant excerpts from the systemd journal, 
dmesg,
+   kern.log and dpkg.log, Jul 8 - Oct 21, UTC timestamps, identifiers redacted)
  - trackpad-debug-20261020-153537.log  (wedged: 0 events)
  - trackpad-debug-20261021-083726.log  (wedged: 0 events)
  - trackpad-debug-20261021-084257.log  (after recovery: libinput record with 
jumps)
- 
- ProblemType: Bug
- DistroRelease: Ubuntu 26.04
- Package: linux-image-7.0.0-38-generic 7.0.0-38.38
- ProcVersionSignature: Ubuntu 7.0.0-38.38-generic 7.0.14
- Uname: Linux 7.0.0-38-generic x86_64
- ApportVersion: 2.34.0-0ubuntu2
- Architecture: amd64
- AudioDevicesInUse:
-  USER        PID ACCESS COMMAND
-  /dev/snd/controlC0:  [email protected]  11385 F.... pipewire
-                       [email protected]  11401 F.... wireplumber
-  /dev/snd/seq:        [email protected]  11385 F.... pipewire
- CasperMD5CheckResult: pass
- CurrentDesktop: ubuntu:GNOME
- Date: Wed Oct 21 08:46:33 2026
- InstallationDate: Installed on 2025-12-12 (313 days ago)
- InstallationMedia: Ubuntu 25.04 "Plucky Puffin" - Daily amd64 (20250306)
- MachineType: LENOVO 21QTCTO1WW
- ProcEnviron:
-  LANG=en_US.UTF-8
-  PATH=(custom, no user)
-  SHELL=/usr/bin/bash
-  TERM=screen-256color
-  XDG_RUNTIME_DIR=<set>
- ProcFB: 0 i915drmfb
- ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-7.0.0-38-generic 
root=/dev/mapper/ubuntu--vg-ubuntu--lv ro quiet splash 
crashkernel=2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M
- SourcePackage: linux
- UpgradeStatus: Upgraded to resolute on 2026-04-22 (182 days ago)
- dmi.bios.date: 08/06/2025
- dmi.bios.release: 1.18
- dmi.bios.vendor: LENOVO
- dmi.bios.version: R2WET36W (1.18 )
- dmi.board.asset.tag: Not Available
- dmi.board.name: 21QTCTO1WW
- dmi.board.vendor: LENOVO
- dmi.board.version: SDK0T76461 WIN
- dmi.chassis.asset.tag: No Asset Information
- dmi.chassis.type: 10
- dmi.chassis.vendor: LENOVO
- dmi.chassis.version: None
- dmi.ec.firmware.release: 1.10
- dmi.modalias: 
dmi:bvnLENOVO:bvrR2WET36W(1.18):bd08/06/2025:br1.18:efr1.10:svnLENOVO:pn21QTCTO1WW:pvrThinkPadP14sGen6:rvnLENOVO:rn21QTCTO1WW:rvrSDK0T76461WIN:cvnLENOVO:ct10:cvrNone:skuLENOVO_MT_21QT_BU_Think_FM_ThinkPadP14sGen6:pfaThinkPadP14sGen6:
- dmi.product.family: ThinkPad P14s Gen 6
- dmi.product.name: 21QTCTO1WW
- dmi.product.sku: LENOVO_MT_21QT_BU_Think_FM_ThinkPad P14s Gen 6
- dmi.product.version: ThinkPad P14s Gen 6
- dmi.sys.vendor: LENOVO

** Description changed:

  Synaptics SYNA8022 (06CB:CE67) I2C-HID touchpad reports corrupted
  coordinates, then wedges the I2C bus ("lost arbitration"); recovers only
  after the device is power-cycled (s2idle suspend/resume or full power-
  off)
  
  == Summary ==
  
  The built-in touchpad on a ThinkPad P14s Gen 6 (21QTCTO1WW) stops responding
  completely after anywhere from ~15 seconds to ~1.5 hours of use. Before each
  failure the touchpad emits physically impossible coordinate jumps (libinput:
  "kernel bug: Touch jump detected and discarded"), followed by an I2C 
controller
  abort ("i2c_dw_handle_tx_abort: lost arbitration") and continuous
  "controller timed out" / "failed to set a report to device: -110" errors.
  Once wedged, no evdev events are produced at all.
  
  The device does not recover via modprobe or warm reboot. It recovers when the
  touchpad loses power: closing/opening the lid (s2idle suspend/resume, even a
  ~22 s suspend) or a full power-off. After recovery the coordinate corruption
  starts again immediately and the bus wedges again later.
  
- I suspect a hardware fault in the touchpad module (evidence below), but I'm
+ It could be a hardware fault in the touchpad module (evidence below), but I'm
  filing this so the kernel-side behaviour can be reviewed: the I2C DesignWare
  controller/i2c-hid stack never recovers from the stuck bus, and a warm reboot
  leaves the device missing completely with nothing logged.
  
  All times below are UTC.
  
  == Hardware / software ==
  
  Machine:   LENOVO ThinkPad P14s Gen 6, 21QTCTO1WW
  BIOS:      R2WET36W (1.18), 08/06/2025 (unchanged on every boot in the logs)
  Touchpad:  SYNA8022:00 06CB:CE67, I2C HID v1.00, driver hid-multitouch
-            
/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-SYNA8022:00
+            
/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-SYNA8022:00
  OS:        Ubuntu 26.04 LTS
  Kernel:    7.0.0-38-generic (first booted 2026-10-19 17:11); the symptoms 
first
-            appeared on 7.0.0-30-generic
+            appeared on 7.0.0-30-generic
  libinput:  1.31.1-1ubuntu1.2 (unchanged since 2026-09-15)
  Power:     on battery (AC adapter off-line) during all failures; battery 98% 
of
-            design capacity, 24 cycles
+            design capacity, 24 cycles
  
  == Kernel log at failure (example: cold boot 2026-10-20) ==
  
  21:33:07  hid-multitouch 0018:06CB:CE67.0001: input,hidraw0: I2C HID v1.00 
Mouse [SYNA8022:00 06CB:CE67] on i2c-SYNA8022:00
  21:33:22  libinput error: event5 - SYNA8022:00 06CB:CE67 Touchpad: kernel 
bug: Touch jump detected and discarded.  (x5, then rate-limited)
  21:33:25  i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost 
arbitration
  21:33:26  i2c_designware i2c_designware.0: controller timed out
  21:33:47  i2c_designware i2c_designware.0: controller timed out
  21:33:47  i2c_hid_acpi i2c-SYNA8022:00: failed to set a report to device: 
-110   (repeats)
  
  The occurrence at 2026-10-20 21:11 also logged:
-   i2c_hid_acpi i2c-SYNA8022:00: failed to change power setting.
+   i2c_hid_acpi i2c-SYNA8022:00: failed to change power setting.
  
  == Occurrences of the bus wedge ==
  
  2026-10-20 15:29  lost arbitration, ~17 min after resume
  2026-10-20 21:11  lost arbitration -> timeouts -> "failed to change power 
setting",
-                   ~16 min after resume
+                   ~16 min after resume
  2026-10-20 21:33  lost arbitration 16 s after a cold boot
  2026-10-21 14:36  lost arbitration ~75 min after resume from overnight suspend
  
  Touch-jump errors per UTC day (systemd journal, continuous coverage 2026-07-08
  to 2026-10-21):
-   Jul 15: 1
-   Jul 31: 6
-   Aug 1 - Oct 17: 0
-   Oct 18: 5   (first at 00:04, 11 s after undocking; kernel 7.0.0-30)
-   Oct 19: 15
-   Oct 20: 53
-   Oct 21: 35  (until 14:43)
+   Jul 15: 1
+   Jul 31: 6
+   Aug 1 - Oct 17: 0
+   Oct 18: 5   (first at 00:04, 11 s after undocking; kernel 7.0.0-30)
+   Oct 19: 15
+   Oct 20: 53
+   Oct 21: 35  (until 14:43)
  These are lower bounds: libinput rate-limits the message to 5 per 8 minutes.
  
  == Recovery behaviour ==
  
  modprobe i2c_hid_acpi / hid_multitouch   -> no effect
  warm reboot (2026-10-20 21:18)           -> touchpad NOT enumerated at all on 
the next
-                                             boot (no SYNA8022 lines in dmesg, 
no errors)
+                                             boot (no SYNA8022 lines in dmesg, 
no errors)
  full power-off + boot (21:33)            -> works, failed again after 16 s
  lid close/open (s2idle), even ~22 s      -> works again; no i2c/hid messages 
logged on
-                                             resume; corruption resumes 
immediately
+                                             resume; corruption resumes 
immediately
  i2c_hid_acpi unbind/bind (2026-10-20     -> device re-enumerated as 
0018:06CB:CE67.0003
-   16:25:38, ~5 min after a resume)          and reported events 7 s later. 
This ran
-                                             after a suspend/resume, so it is 
unclear
-                                             whether the resume or the rebind 
restored it.
+   16:25:38, ~5 min after a resume)          and reported events 7 s later. 
This ran
+                                             after a suspend/resume, so it is 
unclear
+                                             whether the resume or the rebind 
restored it.
  
  == Evidence from evdev captures (libinput record on /dev/input/event5)
  ==
  
  While wedged (2026-10-20 21:35, 2026-10-21 14:37): 30 s capture with finger
  movement recorded 0 events ("No events recorded").
  
  Right after a lid-cycle recovery (2026-10-21 14:43): 4136 frames in 29.4 s.
  Frame cadence is steady (median 6.8 ms, matching MSC_TIMESTAMP increments
  of 6800 us; no dropped reports). Slot, tracking ID and timestamp data are all
  consistent, but 19 single-frame position jumps of 2.8-7.8 mm occurred during
  ordinary one-finger movement. The capture timestamps match the libinput
  "Touch jump" journal entries to the millisecond. Two patterns:
  
-  (a) jump then hold - finger moving ~0.7 mm/frame jumps 7 mm in one frame:
-      x=104 y=261  d=( -3,  +8)
-      x= 98 y=345  d=( -6, +84)   <- 7 mm in 6.8 ms
-      x= 98 y=346  d=( +0,  +1)
+  (a) jump then hold - finger moving ~0.7 mm/frame jumps 7 mm in one frame:
+      x=104 y=261  d=( -3,  +8)
+      x= 98 y=345  d=( -6, +84)   <- 7 mm in 6.8 ms
+      x= 98 y=346  d=( +0,  +1)
  
-  (b) single bad sample that returns to the trajectory:
-      x=1059  d=(+14, -5)
-      x=1013  d=(-46,+15)         <- outlier
-      x=1074  d=(+61,-20)
-      x=1094  d=(+20, -7)
+  (b) single bad sample that returns to the trajectory:
+      x=1059  d=(+14, -5)
+      x=1013  d=(-46,+15)         <- outlier
+      x=1074  d=(+61,-20)
+      x=1094  d=(+20, -7)
  
  (units: 12 units/mm, ABS_MT_POSITION_X/Y)
  
  == Analysis ==
  
  - The corrupted positions are inside otherwise well-formed, evenly timed HID
-   reports, so they seem to come from the touchpad's own position reporting
-   rather than I2C transfer corruption or libinput.
+   reports, so they seem to come from the touchpad's own position reporting
+   rather than I2C transfer corruption or libinput.
  - Not charger noise: all failures occurred on battery.
  - No BIOS, firmware (fwupd), libinput or kernel change coincides with onset
-   (2026-10-18 00:04 UTC, on kernel 7.0.0-30, which had been running since
-   2026-09-02).
+   (2026-10-18 00:04 UTC, on kernel 7.0.0-30, which had been running since
+   2026-09-02).
  - The device holding the bus ("lost arbitration" on a single-device bus) and
-   recovering after power removal suggests the touchpad controller hangs.
+   recovering after power removal suggests the touchpad controller hangs.
  
  Kernel-side questions:
-  1. i2c_designware does not appear to attempt bus recovery after
-     "lost arbitration"; the bus stays dead until the device is powered off.
-  2. After a warm reboot the device is not enumerated at all and nothing is
-     logged; a probe failure message would help diagnosis.
-  3. Not yet tested: whether 7.0.0-30-generic changes how often the bus wedges
-     (all bus lockups so far were on 7.0.0-38; touch jumps occur on both).
+  1. i2c_designware does not appear to attempt bus recovery after
+     "lost arbitration"; the bus stays dead until the device is powered off.
+  2. After a warm reboot the device is not enumerated at all and nothing is
+     logged; a probe failure message would help diagnosis.
+  3. Not yet tested: whether 7.0.0-30-generic changes how often the bus wedges
+     (all bus lockups so far were on 7.0.0-38; touch jumps occur on both).
  
  == Workaround ==
  
  Close and reopen the lid (s2idle suspend/resume) to restore the touchpad
  temporarily. TrackPoint and external mice are unaffected.
  
  == Attached ==
  
  - trackpad-log-excerpts.txt  (relevant excerpts from the systemd journal, 
dmesg,
-   kern.log and dpkg.log, Jul 8 - Oct 21, UTC timestamps, identifiers redacted)
+   kern.log and dpkg.log, Jul 8 - Oct 21, UTC timestamps, identifiers redacted)
  - trackpad-debug-20261020-153537.log  (wedged: 0 events)
  - trackpad-debug-20261021-083726.log  (wedged: 0 events)
  - trackpad-debug-20261021-084257.log  (after recovery: libinput record with 
jumps)

** Package changed: linux (Ubuntu) => libinput (Ubuntu)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2171633

Title:
  Lenovo P14s Gen 6 Intel trackpad is intermittent, sometimes it skips
  or fails to register gesutres, sometimes it stops working entirely

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libinput/+bug/2171633/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to