On 2/22/24 17:59, Paul Menzel wrote:
Dear Jarkko,
Thank you very much for your reply.
Am 22.02.24 um 16:16 schrieb Jarkko Nikula:
On 2/20/24 18:15, Paul Menzel wrote:
On a Dell XPS 13 9360 with Debian sid/unstable and Linux 6.8-rc4+
(and probably before), I sometimes notice the fan spinning up, and
trying to figure out why, I noticed that `top` showed
`irq/51-DLL075B:01` in state D (uninterruptible sleep (usually IO)).
That is without using the touchpad. I am using an external USB
keyboard and an external USB mouse.
$ sudo dmesg | grep -e "DMI:" -e "Linux version" -e microcode
[ 0.000000] Linux version 6.8.0-rc4+
(build@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) (gcc (Debian 13.2.0-13)
13.2.0, GNU ld (GNU Binutils for Debian) 2.42) #25 SMP
PREEMPT_DYNAMIC Sat Feb 17 05:39:03 CET 2024
[ 0.000000] DMI: Dell Inc. XPS 13 9360/0596KF, BIOS 2.21.0
06/02/2022
[ 0.367292] microcode: Current revision: 0x000000f4
[ 0.367293] microcode: Updated early from: 0x000000f0
$ sudo dmesg | grep DLL075B
[ 0.967975] input: DLL075B:01 06CB:76AF Mouse as
/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-DLL075B:01/0018:06CB:76AF.0001/input/input2
[ 0.968302] input: DLL075B:01 06CB:76AF Touchpad as
/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-DLL075B:01/0018:06CB:76AF.0001/input/input3
[ 0.968569] hid-generic 0018:06CB:76AF.0001: input,hidraw0:
I2C HID v1.00 Mouse [DLL075B:01 06CB:76AF] on i2c-DLL075B:01
[ 19.753775] input: DLL075B:01 06CB:76AF Mouse as
/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-DLL075B:01/0018:06CB:76AF.0001/input/input17
[ 19.753950] input: DLL075B:01 06CB:76AF Touchpad as
/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-DLL075B:01/0018:06CB:76AF.0001/input/input18
[ 19.754654] hid-multitouch 0018:06CB:76AF.0001:
input,hidraw0: I2C HID v1.00 Mouse [DLL075B:01 06CB:76AF] on
i2c-DLL075B:01
From `top`:
206 root -51 0 0 0 0 D 1,7 0,0
8:45.46 irq/51-DLL075B:01
$ ps aux | grep 'irq/51'
root 206 0.2 0.0 0 0 ? D Feb17
12:11 [irq/51-DLL075B:01]
The interrupts increase though by around 610 per second (without
using the device):
$ for i in $(seq 1 10); do LANG= date; sudo grep -e '17:' -e
'51:' /proc/interrupts; sleep 1; done
Tue Feb 20 17:04:23 CET 2024
17: 1631256120 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25255617 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:27 CET 2024
17: 1631295844 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25256229 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:28 CET 2024
17: 1631335618 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25256843 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:29 CET 2024
17: 1631375224 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25257454 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:30 CET 2024
17: 1631415636 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25258076 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:31 CET 2024
17: 1631455174 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25258687 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:32 CET 2024
17: 1631494990 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25259300 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:33 CET 2024
17: 1631534944 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25259915 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:34 CET 2024
17: 1631574647 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25260527 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
Tue Feb 20 17:04:35 CET 2024
17: 1631613552 0 0 6452384 IR-IO-APIC
17-fasteoi idma64.1, i2c_designware.1
51: 25261130 109943 0 0 IR-IO-APIC
51-fasteoi DLL075B:01
The D state increases the load average.
Is that the expected behavior?
No this is not. Touchpad appears to be firing interrupt line 51
continuously and then drivers/hid/i2c-hid/i2c-hid-core.c:
i2c_hid_irq() is trying to read input from touchpad over I2C bus.
Not sure is this HW failure or system FW error (there are bad ACPI
tables out there misconfiguring things etc).
It normally works, and I have no idea, if this even contributed to the
laggy system. Right now, the interrupts do not increase when *not* using
the touchpad or touchscreen.
Ah, so it triggers randomly? When it happens does the situation remain
or does it recover back to normal somehow, e.g. after touching the
touchpad, unloading and loading the i2c_hid[_acpi] module,
suspend/resume cycle, etc?
If it helps, the output of `acpidump` is attached to the (unrelated)
Linux Kernel Bugzilla issue *Linux warning `usb: port power management
may be unreliable` on Dell XPS 13 9360* [1].
Do you have a suggestion, what I can do next time, this happens?
I'd try to see is it possible to recover back to normal or is reboot
required. That might give ideas what might trigger the situation.
Could Linux detect this situation and log something?
Don't know. Perhaps difficult to differentiate from normal touchpad use.