Can someone assist me in analyzing the data in this output from my /proc/interrupts
file?
$ cat /proc/interrupts
CPU0 CPU1
0: 22 0 IR-IO-APIC 2-edge timer
1: 2 0 IR-IO-APIC 1-edge i8042
8: 1 0 IR-IO-APIC 8-edge rtc0
9: 0 0 IR-IO-APIC 9-fasteoi acpi
12: 4 0 IR-IO-APIC 12-edge i8042
120: 0 0 DMAR-MSI 0-edge dmar0
122: 0 0 IR-PCI-MSI 327680-edge xhci_hcd
123: 25164 5760490 IR-PCI-MSI 1048576-edge enp2s0
124: 17 5424414 IR-PCI-MSI 524288-edge amdgpu
What I have compiled so far...
- Column 1: IRQ number
- Column 2&3: # of interrupts per CPU (variable # of columns depends on how many CPUs your system has)
- Column 4: Type of interrupt
- Column 5: ???
- Column 6: Name of device
I'm interested in finding out what data the 5th column contains, i.e. 524288-edge
, and if someone can break down what the number represents. From researching online I only see the interrupt type column followed by the name of the device, this column data is always missing. Is it simply more information about the interrupt type?
hwirq
local to the interrupt controller (as specified in column 4). The kernel maintains a mapping between the localhwirq
of each interrupt controller (irqchip
) to a globalirq
(aka virtual irq, which is specified in the 1st column), using a mechanism called irq domain.