1

I am using Kubuntu 18.04 LTS on a Dell XPS 13 7390. Recently I got the update needed notification and, as any other user, updated my system promptly. When I rebooted my laptop my touchpad does not work properly anymore.

KDE settings do show that I have enabled "click emulation" and "inverse vertical scrolling" but what the settings show is just not true. Neither click emulation nor inverse scrolling are enabled. I have tried to restore default settings and then to set them again, to no avail.

$ cat ~/.config/touchpadrc 
[parameters]
InvertVertScroll=true
Tapping=true

My current kernel is 5.4.0-84-generic #94~18.04.1-Ubuntu. The last kernel when my touchpad settings worked was 5.4.0-81-generic.


To figure out what was the last working kernel, I needed to reboot into each of the kernels currently installed on my system and make sure whether my touchpad works properly or not.

To get GRUB menu showing on each startup I needed to change the following two lines in my /etc/defaults/grub:

# GRUB_TIMEOUT_STYLE=hidden
# GRUB_TIMEOUT=0
GRUB_TIMEOUT=-1
yujaiyu
  • 214

1 Answers1

1

You have found a bug in the kernel!

Consider filing a bug report. See How do I report a bug?

Test

When you boot Ubuntu, go to the Advanced Options for Ubuntu part of the grub menu. If you don't see GRUB when Ubuntu boots, you may have to press and hold the ESC or the SHIFT key to see the grub menu. There you will be able to select at least one older version of the kernel to boot from.

A Workaround

Read all the answers to the question:

How can I boot with an older kernel version?

You can change: GRUB_DEFAULT=0 to GRUB_DEFAULT=2 in the file /etc/default/grub

sudo nano /etc/default/grub

to edit the file. When done, press Ctrl+O to save the file and Ctrl+X to exit nano. Then use:

sudo update-grub

command to make the change take effect. This will set grub to boot from the older kernel without going through the menu every time.

In a few days or weeks there will be an updated kernel. When that happens boot to the new kernel using the grub menu and check if the touchpad works in the new kernel. If it works, reverse the changes described above.

Hope this helps

user68186
  • 33,360
  • If it's a Kernel bug, it's a very nasty one. After rebooting ~10 times, my touchpad works fine again, even with 5.4.0-84-generic. – yujaiyu Sep 14 '21 at 22:30
  • One may also legitimately ask why did I reboot 10 times. Well, because the "press ESC" to reach the grub boot menu is horribly implemented. You need to hold ESC for a very specific amount of time. You hold it a little more, you get into the grub shell. You hold it a little shorter, you get your default kernel booted already. – yujaiyu Sep 14 '21 at 22:33
  • @foki If the problem went away after booting 10 times, it may not be a kernel bug after all. I have never heard of a kernel bug fixing itself after 10 reboots. It may be a loose contact or some other hardware problem. Good luck! – user68186 Sep 15 '21 at 15:33
  • No, it is not a hardware problem. It makes zero sense that it is a hardware problem, especially not a loose contact. If contact was loose, then the touchpad would either be functional, dysfunctional, or intermittently functional. This is an obvious configuration issue. Under certain conditions, my ~/.config/touchpadrc gets overridden by some process under certain conditions. But I do agree that developers will probably ignore the bug and go for some easier ones. – yujaiyu Sep 15 '21 at 17:48