broken touchpad after i2c-i801 blacklist change

Bug #1802135 reported by chad billman on 2018-11-07
30
This bug affects 4 people
Affects Status Importance Assigned to Milestone
kmod (Ubuntu)
Critical
Unassigned
Xenial
Undecided
Unassigned
Bionic
Undecided
Unassigned
Cosmic
Undecided
Unassigned
linux (Ubuntu)
Undecided
AaronMa
Xenial
Undecided
Unassigned
Bionic
Undecided
Unassigned
Cosmic
Undecided
Unassigned

Bug Description

SRU:
====

[Impact]
ThinkPad 11e 2nd/3rd touchpad not working when load i2c-i801.
PNP LEN0049 will use smbus by default in kernel, but i2c bus is in
runtime suspend mode in old touchpad fw.
Then touchpad will not work.
LEN2040 on 11e 3rd can reproduce this issue by passing
psmouse.synaptics_intertouch=1

These 2 pnp device should be the same one Synaptics s3203_ver5.

[Fix]
i2c-i801 should auto suspend when not used, no need runtime pm.

[Test Case]
Tested on Thinkpad 11e 3rd.
Touchpad works fine.

[Regression Potential]
Low, upstream fix cherry-picked.

4.18 kernel patch, no need for cosmic.

Original bug report:
=================
After upgrading to kmod (24-1ubuntu3.1) the trackpads stop working on Lenovo 11e 2nd gen machines.

We have a fleet of approximetly 1000 of them in production running ubuntu 18.04. Prior to this update the trackpads worked out of box in 18.04.

We are currently working around the issue by deploying our own blacklist files.

Here is a link to the SRU justification: https://bugs.launchpad.net/hwe-next/+bug/1786574

chad billman (cabillman) on 2018-11-07
description: updated
Changed in kmod (Ubuntu):
importance: Undecided → Critical
AaronMa (mapengyu) wrote :

Hi Chad,
Could you upload your dmesg when issue happened?

chad billman (cabillman) wrote :

Here is the dmesg when i2c_i801 is not blacklisted.

chad billman (cabillman) wrote :

Before we were able find the cause of our trackpad issue we tried a number of different things. I noticed that the 4.19 mainline kernel seemed to work fine even with i2c_i801 loaded. Maybe this is actually a kernel bug?

I opened the bug report here because it seemed like a regression to ubuntu stable for our hardware. The trackpad worked prior to installing the updated kmod package.

chad billman (cabillman) wrote :

Here is the dmesg for the same machine with i2c_i801 blacklisted.

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in kmod (Ubuntu):
status: New → Confirmed
Changed in kmod (Ubuntu):
assignee: nobody → AaronMa (mapengyu)

Hello chad, or anyone else affected,

Accepted kmod into cosmic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/kmod/25-1ubuntu1.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-cosmic to verification-done-cosmic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-cosmic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in kmod (Ubuntu Cosmic):
status: New → Fix Committed
tags: added: verification-needed verification-needed-cosmic
Changed in kmod (Ubuntu Bionic):
status: New → Fix Committed
tags: added: verification-needed-bionic
Brian Murray (brian-murray) wrote :

Hello chad, or anyone else affected,

Accepted kmod into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/kmod/24-1ubuntu3.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in kmod (Ubuntu Xenial):
status: New → Fix Committed
tags: added: verification-needed-xenial
Brian Murray (brian-murray) wrote :

Hello chad, or anyone else affected,

Accepted kmod into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/kmod/22-1ubuntu5.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Anthony Wong (anthonywong) wrote :

Opened "linux" task for investigating the real root cause of this regression.

Changed in linux (Ubuntu):
assignee: nobody → AaronMa (mapengyu)
Changed in kmod (Ubuntu):
assignee: AaronMa (mapengyu) → nobody

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 1802135

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
Changed in linux (Ubuntu Bionic):
status: New → Incomplete
Changed in linux (Ubuntu Cosmic):
status: New → Incomplete
Changed in linux (Ubuntu Xenial):
status: New → Incomplete
tags: added: bionic
chad billman (cabillman) wrote :

I added bionic-proposed to a broken machine and verified the installed version is 24-1ubuntu3.2 and that the blacklist.conf file had the proper blacklist entry. However I noticed that apt did not run update-initramfs.

After a reboot the touchpad was still not working. After manually running update-initramfs and rebooting the touchpad worked.

Is that the expected behaviour in this case?

I re-installed kmod=24-1ubuntu3 and it didn't appear to update the initramfs either.

Earle Lyons (earlev4) wrote :

Added bionic-proposed to my ThinkPad 11e and installed 241ubuntu3.2. Verified that blacklist i2c_i801 now exists in blacklist.conf. Rebooted ThinkPad 11e and rebooted. Mouse did not work. However, did not perform a manual running of update-initramfs. Thank you.

AaronMa (mapengyu) on 2018-11-23
description: updated
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Changed in linux (Ubuntu Xenial):
status: Incomplete → Confirmed
Changed in linux (Ubuntu Bionic):
status: Incomplete → Confirmed
Changed in linux (Ubuntu Cosmic):
status: Incomplete → Confirmed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package kmod - 25-1ubuntu2

---------------
kmod (25-1ubuntu2) disco; urgency=medium

  * Add i2c_i801 back to d/modprobe.d/blacklist.conf again due to regressions.
    (LP: #1802689, #1802135)

 -- Michael Hudson-Doyle <email address hidden> Tue, 13 Nov 2018 10:50:02 +1300

Changed in kmod (Ubuntu):
status: Confirmed → Fix Released
AaronMa (mapengyu) wrote :

thinkpad 11e 3rd touchpad works fine on bionic proposed kernel linux-image-4.15.0-1029-oem.
i2c-i801 is loaded.
touchpad is detected as s3203_ver5.

Could you try this kernel with i2c_i801 unblacklisted?

Changed in linux (Ubuntu Bionic):
status: Confirmed → Fix Committed
Changed in linux (Ubuntu Cosmic):
status: Confirmed → Fix Committed
Khaled El Mously (kmously) wrote :

Marking this as invalid for Xenial based on Aaron Ma's comment in https://lists.ubuntu.com/archives/kernel-team/2018-December/097439.html

Changed in linux (Ubuntu Xenial):
status: Confirmed → Won't Fix
status: Won't Fix → Invalid
Brian Murray (brian-murray) wrote :

Setting to v-done for bionic based off comments 11 and 12.

tags: added: verification-done-bionic
removed: verification-needed-bionic
Launchpad Janitor (janitor) wrote :
Download full text (47.0 KiB)

This bug was fixed in the package linux - 4.15.0-44.47

---------------
linux (4.15.0-44.47) bionic; urgency=medium

  * linux: 4.15.0-44.47 -proposed tracker (LP: #1811419)

  * Packaging resync (LP: #1786013)
    - [Packaging] update helper scripts

  * CPU hard lockup with rigorous writes to NVMe drive (LP: #1810998)
    - blk-wbt: pass in enum wbt_flags to get_rq_wait()
    - blk-wbt: Avoid lock contention and thundering herd issue in wbt_wait
    - blk-wbt: move disable check into get_limit()
    - blk-wbt: use wq_has_sleeper() for wq active check
    - blk-wbt: fix has-sleeper queueing check
    - blk-wbt: abstract out end IO completion handler
    - blk-wbt: improve waking of tasks

  * To reduce the Realtek USB cardreader power consumption (LP: #1811337)
    - mmc: sdhci: Disable 1.8v modes (HS200/HS400/UHS) if controller can't support
      1.8v
    - mmc: core: Introduce MMC_CAP_SYNC_RUNTIME_PM
    - mmc: rtsx_usb_sdmmc: Don't runtime resume the device while changing led
    - mmc: rtsx_usb: Use MMC_CAP2_NO_SDIO
    - mmc: rtsx_usb: Enable MMC_CAP_ERASE to allow erase/discard/trim requests
    - mmc: rtsx_usb_sdmmc: Re-work runtime PM support
    - mmc: rtsx_usb_sdmmc: Re-work card detection/removal support
    - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function
    - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection
    - memstick: Prevent memstick host from getting runtime suspended during card
      detection
    - memstick: rtsx_usb_ms: Use ms_dev() helper
    - memstick: rtsx_usb_ms: Support runtime power management

  * Support non-strict iommu mode on arm64 (LP: #1806488)
    - iommu/io-pgtable-arm: Fix race handling in split_blk_unmap()
    - iommu/arm-smmu-v3: Implement flush_iotlb_all hook
    - iommu/dma: Add support for non-strict mode
    - iommu: Add "iommu.strict" command line option
    - iommu/io-pgtable-arm: Add support for non-strict mode
    - iommu/arm-smmu-v3: Add support for non-strict mode
    - iommu/io-pgtable-arm-v7s: Add support for non-strict mode
    - iommu/arm-smmu: Support non-strict mode

  * ELAN900C:00 04F3:2844 touchscreen doesn't work (LP: #1811335)
    - pinctrl: cannonlake: Fix community ordering for H variant
    - pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant

  * Add Cavium ThunderX2 SoC UNCORE PMU driver (LP: #1811200)
    - perf: Export perf_event_update_userpage
    - Documentation: perf: Add documentation for ThunderX2 PMU uncore driver
    - drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver
    - [Config] New config CONFIG_THUNDERX2_PMU=m

  * Update hisilicon SoC-specific drivers (LP: #1810457)
    - SAUCE: Revert "net: hns3: Updates RX packet info fetch in case of multi BD"
    - Revert "UBUNTU: SAUCE: {topost} net: hns3: separate roce from nic when
      resetting"
    - Revert "UBUNTU: SAUCE: {topost} net: hns3: Use roce handle when calling roce
      callback function"
    - Revert "UBUNTU: SAUCE: {topost} net: hns3: Add calling roce callback
      function when link status change"
    - Revert "UBUNTU: SAUCE: {topost} net: hns3: optimize the process of notifying
      roce client"
    - Revert "UBUNTU: S...

Changed in linux (Ubuntu Bionic):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package kmod - 24-1ubuntu3.2

---------------
kmod (24-1ubuntu3.2) bionic; urgency=medium

  * Add i2c_i801 back to d/modprobe.d/blacklist.conf again due to regressions.
    (LP: #1802689, #1802135)

 -- Michael Hudson-Doyle <email address hidden> Tue, 13 Nov 2018 10:54:37 +1300

Changed in kmod (Ubuntu Bionic):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for kmod has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Earle Lyons (earlev4) wrote :

Just removed the hold on kmod (24-1ubuntu3) and updated to kmod (24-1ubuntu3.2). The touchpad is still working. Thanks for everyone's effort on this issue. Greatly appreciate it.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package kmod - 25-1ubuntu1.2

---------------
kmod (25-1ubuntu1.2) cosmic; urgency=medium

  * Add i2c_i801 back to d/modprobe.d/blacklist.conf again due to regressions.
    (LP: #1802689, #1802135)

 -- Michael Hudson-Doyle <email address hidden> Tue, 13 Nov 2018 10:51:29 +1300

Changed in kmod (Ubuntu Cosmic):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package kmod - 22-1ubuntu5.2

---------------
kmod (22-1ubuntu5.2) xenial; urgency=medium

  * Add i2c_i801 back to d/modprobe.d/blacklist.conf again due to regressions.
    (LP: #1802689, #1802135)

 -- Michael Hudson-Doyle <email address hidden> Tue, 13 Nov 2018 10:55:50 +1300

Changed in kmod (Ubuntu Xenial):
status: Fix Committed → Fix Released
Anthony Wong (anthonywong) wrote :

linux/Cosmic should be Fix Released as the fix is already in 4.18 from upstream.

Changed in linux (Ubuntu Cosmic):
status: Fix Committed → Fix Released
Anthony Wong (anthonywong) wrote :

Change linux to Fix Released for the same reason.

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Anthony Wong (anthonywong) wrote :

I have confirmed with both Chad billman (cabillman) and Earle Lyons (earlev4) through email that when running 4.15.0-45 and i2c_i801 removed from blacklist, their touchpads still work.

Brad Figg (brad-figg) on 2019-07-24
tags: added: cscc

This bug is present in Ubuntu 19.10 (yes, the beta) with a Lenovo T560.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers