Re: irq/51-DLL075B:01 in D state without touchpad usage, interrupts increase
From: Jarkko Nikula
Date:  Fri Feb 23 2024 - 05:10:03 EST
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.