Comment 11 for bug 1949394

Revision history for this message
In , mat.jonczyk (mat.jonczyk-linux-kernel-bugs) wrote :

Hello,
Could You provide dmesg with i8042.debug=1 without nomux and reset?
Your two dmesgs (working and not-working) are with different parameters so it is difficult to compare.
Also please include them as plaintext files so that they may be opened in a browser.

You have some warning in the dmesg:
[ 0.029802] Freeing SMP alternatives memory: 24K (ffffffff81e23000 - ffffffff81e29000)
[ 0.029829] ------------[ cut here ]------------
[ 0.029843] WARNING: CPU: 0 PID: 0 at mm/page_alloc.c:2522 __alloc_pages_nodemask+0x350/0xab0()
[ 0.029850] Modules linked in:
[ 0.029859] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc7 #1
[ 0.029865] Hardware name: GIGABYTE P35V2/P35V2, BIOS FB0A 07/14/2014
[ 0.029871] 0000000000000000 5f5bb1e0fb96ecf4 ffffffff81c03c78 ffffffff8167c05f
[ 0.029882] 0000000000000000 ffffffff81c03cb0 ffffffff8106ec4d 0000000000024000
[ 0.029893] 0000000000004000 000000000000000b 0000000000000000 0000000000000000
[ 0.029903] Call Trace:
[ 0.029915] [<ffffffff8167c05f>] dump_stack+0x45/0x56
[ 0.029924] [<ffffffff8106ec4d>] warn_slowpath_common+0x7d/0xa0
[ 0.029932] [<ffffffff8106ed7a>] warn_slowpath_null+0x1a/0x20
[ 0.029940] [<ffffffff81163240>] __alloc_pages_nodemask+0x350/0xab0
[ 0.029952] [<ffffffff81193f3e>] ? __insert_vmap_area+0x8e/0xc0
[ 0.029963] [<ffffffff81194f20>] ? alloc_vmap_area+0x2b0/0x310
[ 0.029976] [<ffffffff811a433a>] alloc_page_interleave+0x3a/0x90
[ 0.029986] [<ffffffff811a4a65>] alloc_pages_current+0xf5/0x170
[ 0.029998] [<ffffffff8115f4eb>] alloc_kmem_pages+0x3b/0xf0
[ 0.030009] [<ffffffff8117c238>] kmalloc_order+0x18/0x50
[ 0.030018] [<ffffffff8117c296>] kmalloc_order_trace+0x26/0xa0
[ 0.030028] [<ffffffff811af111>] __kmalloc+0x221/0x240
[ 0.030041] [<ffffffff81d23830>] efi_bgrt_init+0xce/0x13d
[ 0.030051] [<ffffffff81d22d6d>] efi_late_init+0x9/0xb
[ 0.030060] [<ffffffff81d0eff0>] start_kernel+0x43a/0x46a
[ 0.030067] [<ffffffff81d0e9bf>] ? set_init_arg+0x53/0x53
[ 0.030078] [<ffffffff81d0e5ad>] x86_64_start_reservations+0x2a/0x2c
[ 0.030088] [<ffffffff81d0e6a0>] x86_64_start_kernel+0xf1/0xf4
[ 0.030101] ---[ end trace eff6fb67ff9f469d ]---

This should be investigated.

[ 1.390019] i8042: [20] d4 -> i8042 (command)
[ 1.390185] i8042: [20] f2 -> i8042 (parameter)
[ 1.589398] i8042: [220] d4 -> i8042 (command)
[ 1.589463] i8042: [220] ed -> i8042 (parameter)
[ 1.789570] i8042: [420] 60 -> i8042 (command)
[ 1.789684] i8042: [420] 45 -> i8042 (parameter)
[ 1.789741] i8042: [420] 60 -> i8042 (command)
[ 1.789852] i8042: [420] 47 -> i8042 (parameter)
[ 1.789947] i8042: [420] d4 -> i8042 (command)
[ 1.790005] i8042: [420] f2 -> i8042 (parameter)
[ 1.989793] i8042: [620] 60 -> i8042 (command)
[ 1.989858] i8042: [620] 45 -> i8042 (parameter)
[ 1.989969] i8042: [620] 60 -> i8042 (command)
[ 1.990083] i8042: [620] 47 -> i8042 (parameter)

We are sending "f2" (identify) to the mouse, but receive nothing back.

When the mouse works:
[ 1.258331] i8042: [7] d4 -> i8042 (command)
[ 1.258391] i8042: [7] f2 -> i8042 (parameter)
[ 1.258692] EFI Variables Facility v0.08 2004-May-17
[ 1.261237] i8042: [10] fa <- i8042 (interrupt, 1, 12)
[ 1.262787] i8042: [11] 00 <- i8042 (interrupt, 1, 12)
It responds immediately.

We could reset the touchpad before issuing f2.

Could You try:
--- a/drivers/input/mouse/psmouse-base.c 2014-07-21 06:04:16.000000000 +0200
+++ b/drivers/input/mouse/psmouse-base.c 2014-08-01 15:15:06.837120339 +0200
@@ -1083,6 +1083,8 @@
  * Sunrex K8561 IR Keyboard/Mouse reports 0xff on second and subsequent
  * ID queries, probably due to a firmware bug.
  */
+ if (ps2_command(ps2dev, NULL, 0xff))
+ return -1;

  param[0] = 0xa5;
  if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETID))