Sample Header Ad - 728x90

Very High CPU Usage By IRQ #16

7 votes
1 answer
4888 views
I recently noticed that one of my CPUs was idling at around 85-90% and according to top the usage was coming from interrupts, so just like in this question I used a combination of dmesg and periodically cating /proc/interrupts and found out this: CPU0 CPU1 CPU2 CPU3 0: 17 0 0 0 IR-IO-APIC 2-edge timer 1: 11548 0 2429 0 IR-IO-APIC 1-edge i8042 8: 0 0 0 1 IR-IO-APIC 8-edge rtc0 9: 7 16 0 0 IR-IO-APIC 9-fasteoi acpi 12: 14530 108887 0 0 IR-IO-APIC 12-edge i8042 16: 78464100 0 0 11702812 IR-IO-APIC 16-fasteoi idma64.0, i2c_designware.0, i801_smbus 120: 0 0 0 0 DMAR-MSI 0-edge dmar0 121: 0 0 0 0 DMAR-MSI 1-edge dmar1 As you can see, IRQ #16 is sending interrupts like crazy (every time the CPU wakes up from S3 it seems to start spamming a different CPU), I also found out that my touchpad uses the same IRQ and if the I2C mode is enabled (or *advanced* mode, according to my BIOS), it randomly stops working with the following messages (from dmesg): [ 167.851139] irq 16: nobody cared (try booting with the "irqpoll" option) [ 167.851158] CPU: 2 PID: 3874 Comm: firefox Not tainted 4.15.3-300.fc27.x86_64 #1 [ 167.851160] Hardware name: Acer Aspire E5-575/Ironman_SK , BIOS V1.04 04/26/2016 [ 167.851162] Call Trace: [ 167.851171] [ 167.851185] dump_stack+0x5c/0x85 [ 167.851193] __report_bad_irq+0x30/0xc0 [ 167.851196] note_interrupt+0x235/0x280 [ 167.851198] handle_irq_event_percpu+0x51/0x70 [ 167.851201] handle_irq_event+0x27/0x50 [ 167.851204] handle_fasteoi_irq+0x6b/0x120 [ 167.851209] handle_irq+0xaf/0x120 [ 167.851214] do_IRQ+0x41/0xc0 [ 167.851219] common_interrupt+0xa2/0xa2 [ 167.851222] [ 167.851224] RIP: 0010:_raw_spin_lock+0x10/0x20 [ 167.851226] RSP: 0000:ffffa85a857dfdd0 EFLAGS: 00000246 ORIG_RAX: ffffffffffffffdb [ 167.851230] RAX: 0000000000000000 RBX: ffff8d0a268930c8 RCX: 00003ffffffff000 [ 167.851231] RDX: 0000000000000001 RSI: 8000000000000025 RDI: ffffd21648d7ca70 [ 167.851232] RBP: ffffd2164892e100 R08: 0000000000000000 R09: 0000000000171800 [ 167.851233] R10: 0000000000271800 R11: 0000000000001000 R12: 0000000000000000 [ 167.851234] R13: 8000000224b84867 R14: ffffd21648d7ca70 R15: ffff8d0a35f29810 [ 167.851244] __handle_mm_fault+0xa4c/0x1290 [ 167.851249] handle_mm_fault+0xaa/0x1f0 [ 167.851255] __do_page_fault+0x25d/0x4e0 [ 167.851262] ? SyS_mmap_pgoff+0xfb/0x250 [ 167.851264] do_page_fault+0x32/0x110 [ 167.851267] ? page_fault+0x36/0x60 [ 167.851269] page_fault+0x4c/0x60 [ 167.851272] RIP: 0033:0x7ff86dc0b205 [ 167.851273] RSP: 002b:00007ffe6493e888 EFLAGS: 00010206 [ 167.851276] handlers: [ 167.851291] [] idma64_irq [idma64] [ 167.851296] [] i2c_dw_isr [ 167.851302] [] i801_isr [i2c_i801] [ 167.851304] Disabling IRQ #16 Is this a hardware issue? What can I do? ---------- Finally I have a chance to dig more into this, by running lspci -nnkv I found out 2 devices that are using IRQ 16: 00:15.0 Signal processing controller : Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 [8086:9d60] (rev 21) Subsystem: Acer Incorporated [ALI] Device [1025:1094] Flags: fast devsel, IRQ 16 Memory at a132b000 (64-bit, non-prefetchable) [size=4K] Capabilities: Power Management version 3 Capabilities: Vendor Specific Information: Len=14 Kernel driver in use: intel-lpss Kernel modules: intel_lpss_pci and: 00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-LP SMBus [8086:9d23] (rev 21) Subsystem: Acer Incorporated [ALI] Device [1025:1094] Flags: medium devsel, IRQ 16 Memory at a132e000 (64-bit, non-prefetchable) [size=256] I/O ports at 4040 [size=32] Kernel driver in use: i801_smbus Kernel modules: i2c_i801 The problem seems to go away if I unload the intel_lpss_pci module i.e. rmmod intel_lpss_pci, but of course the touchpad would stop working. But I guess it's better than having a CPU always at 100%.
Asked by arielnmz (559 rep)
Mar 1, 2018, 05:25 AM
Last activity: Jun 26, 2025, 02:05 PM