[Fujitsu Lifebook E744/E754] i8042 without psmouse means no keyboard at decryption prompt

Bug #1314764 reported by Tony Vroon on 2014-04-30
38
This bug affects 6 people
Affects Status Importance Assigned to Milestone
initramfs-tools (Ubuntu)
Medium
Andy Whitcroft
Trusty
Medium
Andy Whitcroft

Bug Description

[Impact]

When installing encrypted root on these machine the user ends up unable to unlock their root. This will happen on first boot after an install with such a root. The user is unable to unlock their machine without an external keyboard; and is likley to not have access to the internet to find the work around.

[Test Case]

Install on such a machine and confirm that you cannot unlock, install the updated packages and confirm you can.

[Regression Potential]

The fix only adds the psmouse kernel module to the default initramfs build which is relativly benign and should be loaded in the normal case from the root filesystem. The risk seems very low.

===

The built-in keyboard & touchpad on these machines are fully PS/2 based. At first glance, building i8042 into the kernel proper seems sufficient:
[ 2.264540] i8042: PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
[ 2.274233] i8042: Detected active multiplexing controller, rev 1.1
[ 2.279284] serio: i8042 KBD port at 0x60,0x64 irq 1
[ 2.280742] serio: i8042 AUX0 port at 0x60,0x64 irq 12
[ 2.282212] serio: i8042 AUX1 port at 0x60,0x64 irq 12
[ 2.283683] serio: i8042 AUX2 port at 0x60,0x64 irq 12
[ 2.285121] serio: i8042 AUX3 port at 0x60,0x64 irq 12

However, psmouse needs to be built into the initrd to get the keyboard to start working. This is because it sits behind the touchpad on a port that will not work until initialised:
[ 4.339219] psmouse serio2: synaptics: Touchpad model: 1, fw: 8.1, id: 0x1e2b1, caps: 0xd001a3/0x940300/0x126800, board id: 2720, fw id: 1450125
[ 4.339233] psmouse serio2: synaptics: serio: Synaptics pass-through port at isa0060/serio2/input0

This:
CONFIG_SERIO_I8042=y

Should really be accompanied by:
CONFIG_MOUSE_PS2_SYNAPTICS=y

Having the Synaptics support as a module leaves these laptops on an LVM2/DM-crypt password prompt with a non-working keyboard. Users can work around it by connecting a USB keyboard to "jump start" the machine, or add psmouse to /etc/initramfs-tools/modules .
Without disk encryption, the root filesystem will be available in time and the Synaptics driver will initialise the keyboard well before the X login chooser appears.

Launchpad Janitor (janitor) wrote :

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

Changed in linux-lts-saucy (Ubuntu):
status: New → Confirmed
Andy Whitcroft (apw) wrote :

We probabally don't need to build this in if it works with the /etc/initramfs-tools/modules trick. We just need to teach module-init-tools that this is boot essential.

Launchpad Janitor (janitor) wrote :

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

Changed in linux-lts-saucy (Ubuntu Trusty):
status: New → Confirmed
Andy Whitcroft (apw) on 2014-05-01
affects: linux-lts-saucy (Ubuntu) → initramfs-tools (Ubuntu)
Changed in initramfs-tools (Ubuntu):
assignee: nobody → Andy Whitcroft (apw)
status: Confirmed → In Progress
Changed in initramfs-tools (Ubuntu Trusty):
importance: Undecided → Medium
assignee: nobody → Andy Whitcroft (apw)
Changed in initramfs-tools (Ubuntu):
status: In Progress → Confirmed
Changed in initramfs-tools (Ubuntu Trusty):
status: Confirmed → In Progress
Andy Whitcroft (apw) wrote :

Ok, I think this can be sorted by the fix applied to the packages below. Could you test those and report back here please. You will need to install these packages, remove your work around, rebuild your initramfs (update-initramfs -u), and then test. Packages are at the URL below:

    http://people.canonical.com/~apw/initramfs-tools-lp1314764/

Hugh Spencer (hugh-g-spencer) wrote :

I'm not experienced at this so it may be my fault.
I removed the psmouse line from /etc/initramfs-tools/modules
ran update-initramfs -u to put things back as original install.

tried initramfs-tools-bin_0.103ubuntu4.1_amd64.deb and initramfs-tools_0.103ubuntu4.1_all.deb
The first does not give the option to run it.
the 'all' produces Error: Dependency is not satisfiable: initramfs-tools-bin (>=0.103ubuntu4.1)

I also downloaded the amd64.ddeb but it wasnt recognised.

Andy Whitcroft (apw) wrote :

i would expect you to need to install them together so:

    sudo dpkg -i initramfs-tools_0.103ubuntu4.1_all.deb initramfs-tools-bin_0.103ubuntu4.1_amd64.deb

Then rerun update-initramfs -u again.

Hugh Spencer (hugh-g-spencer) wrote :

Thanks APW,
that worked just fine.

Andy Whitcroft (apw) wrote :

To confirm, did the install work just fine, and did the result boot ok?

Hugh Spencer (hugh-g-spencer) wrote :

The install worked fine and it rebooted fine.
I think that is 'problem solved'
Thanks
Hugh

Andy Whitcroft (apw) wrote :

Great. I will get this cleaned up and uploaded to trusty. There will be some tested required once that version hits -proposed to let it out for general use. Thanks for testing.

Andy Whitcroft (apw) on 2014-05-02
Changed in initramfs-tools (Ubuntu):
status: Confirmed → In Progress
importance: Undecided → Medium
Andy Whitcroft (apw) on 2014-05-02
Changed in initramfs-tools (Ubuntu):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package initramfs-tools - 0.103ubuntu5

---------------
initramfs-tools (0.103ubuntu5) utopic; urgency=medium

  * hook-functions/auto_add_modules: include psmouse as some keyboards
    are connected to the "pass-thru" port on the PS2 mouse port (because
    that is such a good idea). (LP: #1314764)
 -- Andy Whitcroft <email address hidden> Thu, 01 May 2014 10:49:19 +0100

Changed in initramfs-tools (Ubuntu):
status: Fix Committed → Fix Released
Andy Whitcroft (apw) on 2014-05-02
description: updated
Changed in initramfs-tools (Ubuntu Trusty):
status: In Progress → Fix Committed

Hello Tony, or anyone else affected,

Accepted initramfs-tools into trusty-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/initramfs-tools/0.103ubuntu4.1 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 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 to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

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

tags: added: verification-needed
Josh.Wright (i-josh-h) wrote :

I've tested the fix on Ubuntu and can confirm it works.

Josh.Wright (i-josh-h) wrote :

I ran a clean install of Ubuntu 14.04 before enabling the -proposed repository and running the Software Updater, the fixed package was installed during the update and works successfully.

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package initramfs-tools - 0.103ubuntu4.1

---------------
initramfs-tools (0.103ubuntu4.1) trusty; urgency=medium

  * hook-functions/auto_add_modules: include psmouse as some keyboards
    are connected to the "pass-thru" port on the PS2 mouse port (because
    that is such a good idea). (LP: #1314764)
 -- Andy Whitcroft <email address hidden> Thu, 01 May 2014 10:49:19 +0100

Changed in initramfs-tools (Ubuntu Trusty):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for initramfs-tools 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 regresssions.

Dmitry Torokhov (dtor) wrote :

FYI: atkbd driver never probes for keyboards on pass-through PS/2 ports (if you check drivers/input/keyboard/atkbd.c you will see that SERIO_PS_PSTHRU is not present in atkbd_serio_ids) so keyboard can't possibly be connected there on these Lifebooks.

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

Other bug subscribers