[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f07333d2-ebb0-4531-a396-8fb3d1daa2c3@molgen.mpg.de>
Date: Fri, 26 Jan 2024 08:03:17 +0100
From: Paul Menzel <pmenzel@...gen.mpg.de>
To: Hans de Goede <hdegoede@...hat.com>
Cc: linux-input@...r.kernel.org, linux-pm@...r.kernel.org,
Dell.Client.Kernel@...l.com, regressions@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: PS/2 keyboard of laptop Dell XPS 13 9360 goes missing after S3
Dear Hans,
Thank you for your reply, and sorry for the delay on my side. I needed
to set up an environment to easily build the Linux kernel.
Am 22.01.24 um 14:43 schrieb Hans de Goede:
> On 1/21/24 15:26, Paul Menzel wrote:
[…]
>> Am 20.01.24 um 21:26 schrieb Hans de Goede:
>>
>>> On 1/18/24 13:57, Paul Menzel wrote:
>>>> #regzbot introduced v6.6.11..v6.7
>>
>>>> There seems to be a regression in Linux 6.7 on the Dell XPS 13 9360 (Intel i7-7500U).
>>>>
>>>> [ 0.000000] DMI: Dell Inc. XPS 13 9360/0596KF, BIOS 2.21.0 06/02/2022
>>>>
>>>> The PS/2 keyboard goes missing after S3 resume¹. The problem does not happen with Linux 6.6.11.
>>>
>>> Thank you for reporting this.
>>>
>>> Can you try adding "i8042.dumbkbd=1" to your kernel commandline?
>>>
>>> This should at least lead to the device not disappearing from
>>>
>>> "sudo libinput list-devices"
>>>
>>> The next question is if the keyboard will still actually
>>> work after suspend/resume with "i8042.dumbkbd=1". If it
>>> stays in the list, but no longer works then there is
>>> a problem with the i8042 controller; or interrupt
>>> delivery to the i8042 controller.
>>>
>>> If "i8042.dumbkbd=1" somehow fully fixes things, then I guess
>>> my atkbd driver fix for other laptop keyboards is somehow
>>> causing issues for yours.
>>
>> Just a quick feedback, that booting with `i8042.dumbkbd=1` seems to fix the issue.
>>
>>> If "i8042.dumbkbd=1" fully fixes things, can you try building
>>> your own 6.7.0 kernel with commit 936e4d49ecbc:
>>>
>>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=936e4d49ecbc8c404790504386e1422b599dec39
>>>
>>> reverted?
>>
>> I am going to try that as soon as possible.
>
> Assuming this was not some one time glitch with 6.7.0,
> I have prepared a patch hopefully fixing this (1) as well
> as a follow up fix to address another potential issue which
> I have noticed.
Unfortunately, it wasn’t just a glitch.
> Can you please give a 6.7.0 (2) kernel with the 2 attached
> patches added a try ?
>
> I know building kernels can be a bit of work / takes time,
> sorry. If you are short on time I would prefer testing these 2
> patches and see if they fix things over trying a plain revert.
Applying both patches on v6.7.1
$ git log --oneline -3
053fa44c0de1 (HEAD -> v6.7.1) Input: atkbd - Do not skip
atkbd_deactivate() when skipping ATKBD_CMD_GETID
0e0fa0113c7a Input: atkbd - Skip ATKBD_CMD_SETLEDS when skipping
ATKBD_CMD_GETID
a91fdae50a6d (tag: v6.7.1, stable/linux-6.7.y, origin/linux-6.7.y)
Linux 6.7.1
I am unable to reproduce the problem in eight ACPI S3 suspend/resume
cycles. The DMAR errors [3] are also gone:
$ sudo dmesg --level alert,crit,err,warn
[ 0.065292] MDS CPU bug present and SMT on, data leak possible.
See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/mds.html
for more details.
[ 0.065292] MMIO Stale Data CPU bug present and SMT on, data
leak possible. See
https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/processor_mmio_stale_data.html
for more details.
[ 0.092064] ENERGY_PERF_BIAS: Set to 'normal', was 'performance'
[ 0.294522] hpet_acpi_add: no address or irqs in _CRS
[ 0.345003] i8042: Warning: Keylock active
[ 1.063807] usb: port power management may be unreliable
[ 1.178339] device-mapper: core: CONFIG_IMA_DISABLE_HTABLE is
disabled. Duplicate IMA measurements will not be recorded in the IMA log.
[ 37.712916] wmi_bus wmi_bus-PNP0C14:01: WQBC data block query
control method not found
[ 67.307070] warning: `atop' uses wireless extensions which will
stop working for Wi-Fi 7 hardware; use nl80211
[ 141.861803] ACPI Error: AE_BAD_PARAMETER, Returned by Handler
for [EmbeddedControl] (20230628/evregion-300)
[ 141.861808] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV.ECR1
due to previous error (AE_BAD_PARAMETER) (20230628/psparse-529)
[ 141.861814] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV.ECR2
due to previous error (AE_BAD_PARAMETER) (20230628/psparse-529)
[ 141.861818] ACPI Error: Aborting method \ECRW due to previous
error (AE_BAD_PARAMETER) (20230628/psparse-529)
[ 141.861821] ACPI Error: Aborting method \ECG1 due to previous
error (AE_BAD_PARAMETER) (20230628/psparse-529)
[ 141.861824] ACPI Error: Aborting method \NEVT due to previous
error (AE_BAD_PARAMETER) (20230628/psparse-529)
[ 141.861827] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66
due to previous error (AE_BAD_PARAMETER) (20230628/psparse-529)
Please tell me, if I can do anything else.
Kind regards,
Paul
> 1) Assuming it is caused by this commit in the first place,
> which seems likely
>
> 2) 6.8-rc1 has a follow up patch which is squashed into the
> first patch here, so these patches will only apply cleanly
> to 6.7.0 .
[3]:
https://lore.kernel.org/all/9a24c335-8ec5-48c9-9bdd-b0dac5ecbca8@molgen.mpg.de/
>>>> [ 1.435071] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
>>>> [ 1.435409] i8042: Warning: Keylock active
>>>> [ 1.437624] serio: i8042 KBD port at 0x60,0x64 irq 1
>>>> [ 1.437631] serio: i8042 AUX port at 0x60,0x64 irq 12
>>>> […]
>>>> [ 1.439743] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0
>>>>
>>>> $ sudo libinput list-devices
>>>> […]
>>>> Device: AT Translated Set 2 keyboard
>>>> Kernel: /dev/input/event0
>>>> Group: 15
>>>> Seat: seat0, default
>>>> Capabilities: keyboard
>>>> Tap-to-click: n/a
>>>> Tap-and-drag: n/a
>>>> Tap drag lock: n/a
>>>> Left-handed: n/a
>>>> Nat.scrolling: n/a
>>>> Middle emulation: n/a
>>>> Calibration: n/a
>>>> Scroll methods: none
>>>> Click methods: none
>>>> Disable-w-typing: n/a
>>>> Disable-w-trackpointing: n/a
>>>> Accel profiles: n/a
>>>> Rotation: 0.0
>>>>
>>>> `libinput list-devices` does not list the device after resuming
>>>> from S3. Some of the function keys, like brightness and airplane
>>>> mode keys, still work, as the events are probably transmitted over
>>>> the embedded controller or some other mechanism. An external USB
>>>> keyboard also still works.
>>>>
>>>> I haven’t had time to further analyze this, but wanted to report
>>>> it. No idea
>>>>
>>>>
>>>> Kind regards,
>>>>
>>>> Paul
>>>>
>>>>
>>>> ¹ s2idle is not working correctly on the device, in the sense, that
>>>> energy usage is very high in that state, and the full battery is at
>>>> 20 % after leaving it for eight hours.
Powered by blists - more mailing lists