Skip to content

Commit 7711df0

Browse files
committed
Fix /proc/interrupts
Fixes: #498 The existing support for /proc/interrupts isn't working because it actually queries /proc/<pid>/interrupts, which does not exist in the /proc filesystem. Change proc_interrupts to query the system-wide /proc/interrupts instead.
1 parent a6ebb3e commit 7711df0

File tree

2 files changed

+54
-54
lines changed

2 files changed

+54
-54
lines changed

proc_interrupts.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ type Interrupts map[string]Interrupt
4242

4343
// Interrupts creates a new instance from a given Proc instance.
4444
func (p Proc) Interrupts() (Interrupts, error) {
45-
data, err := util.ReadFileNoStat(p.path("interrupts"))
45+
data, err := util.ReadFileNoStat(p.fs.proc.Path("interrupts"))
4646
if err != nil {
4747
return nil, err
4848
}

testdata/fixtures.ttar

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -89,59 +89,6 @@ flags: 02004002
8989
mnt_id: 9
9090
Mode: 400
9191
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
92-
Path: fixtures/proc/26231/interrupts
93-
Lines: 49
94-
CPU0 CPU1 CPU2 CPU3
95-
0: 49 0 0 0 IO-APIC 2-edge timer
96-
1: 0 0 0 9 IO-APIC 1-edge i8042
97-
4: 0 1443 0 0 IO-APIC 4-edge ttyS0
98-
8: 1 0 0 0 IO-APIC 8-edge rtc0
99-
9: 0 0 0 0 IO-APIC 9-fasteoi acpi
100-
12: 0 0 144 0 IO-APIC 12-edge i8042
101-
22: 0 0 0 5 IO-APIC 22-fasteoi virtio1
102-
24: 0 0 0 0 PCI-MSI 114688-edge virtio5-config
103-
25: 1800 0 0 0 PCI-MSI 114689-edge virtio5-req.0
104-
26: 0 1469 0 0 PCI-MSI 114690-edge virtio5-req.1
105-
27: 0 0 2654 0 PCI-MSI 114691-edge virtio5-req.2
106-
28: 0 0 0 1989 PCI-MSI 114692-edge virtio5-req.3
107-
29: 1362 0 0 934 PCI-MSI 512000-edge ahci[0000:00:1f.2]
108-
30: 0 0 0 0 PCI-MSI 98304-edge xhci_hcd
109-
31: 0 0 0 0 PCI-MSI 98305-edge xhci_hcd
110-
32: 0 0 0 0 PCI-MSI 98306-edge xhci_hcd
111-
33: 0 0 0 0 PCI-MSI 98307-edge xhci_hcd
112-
34: 0 0 0 0 PCI-MSI 98308-edge xhci_hcd
113-
35: 0 0 0 0 PCI-MSI 16384-edge virtio0-config
114-
36: 0 335 37 0 PCI-MSI 16385-edge virtio0-input.0
115-
37: 0 0 0 318 PCI-MSI 16386-edge virtio0-output.0
116-
38: 0 0 0 0 PCI-MSI 49152-edge virtio2-config
117-
39: 1243 178 0 0 PCI-MSI 49153-edge virtio2-control
118-
40: 0 0 0 0 PCI-MSI 49154-edge virtio2-cursor
119-
41: 0 0 0 0 PCI-MSI 65536-edge virtio3-config
120-
42: 0 0 0 0 PCI-MSI 65537-edge virtio3-virtqueues
121-
43: 0 0 0 0 PCI-MSI 81920-edge virtio4-config
122-
44: 0 0 0 0 PCI-MSI 81921-edge virtio4-virtqueues
123-
NMI: 0 0 0 0 Non-maskable interrupts
124-
LOC: 10196 7429 8542 8229 Local timer interrupts
125-
SPU: 0 0 0 0 Spurious interrupts
126-
PMI: 0 0 0 0 Performance monitoring interrupts
127-
IWI: 0 3 11 6 IRQ work interrupts
128-
RTR: 0 0 0 0 APIC ICR read retries
129-
RES: 7997 11147 10898 12675 Rescheduling interrupts
130-
CAL: 2761 2485 1787 2367 Function call interrupts
131-
TLB: 212 137 158 231 TLB shootdowns
132-
TRM: 0 0 0 0 Thermal event interrupts
133-
THR: 0 0 0 0 Threshold APIC interrupts
134-
DFR: 0 0 0 0 Deferred Error APIC interrupts
135-
MCE: 0 0 0 0 Machine check exceptions
136-
MCP: 1 1 1 1 Machine check polls
137-
ERR: 0
138-
MIS: 0
139-
140-
PIN: 0 0 0 0 Posted-interrupt notification event
141-
NPI: 0 0 0 0 Nested posted-interrupt event
142-
PIW: 0 0 0 0 Posted-interrupt wakeup event
143-
Mode: 644
144-
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
14592
Path: fixtures/proc/26231/io
14693
Lines: 7
14794
rchar: 750339
@@ -2438,6 +2385,59 @@ xpc 399724544 92823103 86219234
24382385
debug 0
24392386
Mode: 644
24402387
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2388+
Path: fixtures/proc/interrupts
2389+
Lines: 49
2390+
CPU0 CPU1 CPU2 CPU3
2391+
0: 49 0 0 0 IO-APIC 2-edge timer
2392+
1: 0 0 0 9 IO-APIC 1-edge i8042
2393+
4: 0 1443 0 0 IO-APIC 4-edge ttyS0
2394+
8: 1 0 0 0 IO-APIC 8-edge rtc0
2395+
9: 0 0 0 0 IO-APIC 9-fasteoi acpi
2396+
12: 0 0 144 0 IO-APIC 12-edge i8042
2397+
22: 0 0 0 5 IO-APIC 22-fasteoi virtio1
2398+
24: 0 0 0 0 PCI-MSI 114688-edge virtio5-config
2399+
25: 1800 0 0 0 PCI-MSI 114689-edge virtio5-req.0
2400+
26: 0 1469 0 0 PCI-MSI 114690-edge virtio5-req.1
2401+
27: 0 0 2654 0 PCI-MSI 114691-edge virtio5-req.2
2402+
28: 0 0 0 1989 PCI-MSI 114692-edge virtio5-req.3
2403+
29: 1362 0 0 934 PCI-MSI 512000-edge ahci[0000:00:1f.2]
2404+
30: 0 0 0 0 PCI-MSI 98304-edge xhci_hcd
2405+
31: 0 0 0 0 PCI-MSI 98305-edge xhci_hcd
2406+
32: 0 0 0 0 PCI-MSI 98306-edge xhci_hcd
2407+
33: 0 0 0 0 PCI-MSI 98307-edge xhci_hcd
2408+
34: 0 0 0 0 PCI-MSI 98308-edge xhci_hcd
2409+
35: 0 0 0 0 PCI-MSI 16384-edge virtio0-config
2410+
36: 0 335 37 0 PCI-MSI 16385-edge virtio0-input.0
2411+
37: 0 0 0 318 PCI-MSI 16386-edge virtio0-output.0
2412+
38: 0 0 0 0 PCI-MSI 49152-edge virtio2-config
2413+
39: 1243 178 0 0 PCI-MSI 49153-edge virtio2-control
2414+
40: 0 0 0 0 PCI-MSI 49154-edge virtio2-cursor
2415+
41: 0 0 0 0 PCI-MSI 65536-edge virtio3-config
2416+
42: 0 0 0 0 PCI-MSI 65537-edge virtio3-virtqueues
2417+
43: 0 0 0 0 PCI-MSI 81920-edge virtio4-config
2418+
44: 0 0 0 0 PCI-MSI 81921-edge virtio4-virtqueues
2419+
NMI: 0 0 0 0 Non-maskable interrupts
2420+
LOC: 10196 7429 8542 8229 Local timer interrupts
2421+
SPU: 0 0 0 0 Spurious interrupts
2422+
PMI: 0 0 0 0 Performance monitoring interrupts
2423+
IWI: 0 3 11 6 IRQ work interrupts
2424+
RTR: 0 0 0 0 APIC ICR read retries
2425+
RES: 7997 11147 10898 12675 Rescheduling interrupts
2426+
CAL: 2761 2485 1787 2367 Function call interrupts
2427+
TLB: 212 137 158 231 TLB shootdowns
2428+
TRM: 0 0 0 0 Thermal event interrupts
2429+
THR: 0 0 0 0 Threshold APIC interrupts
2430+
DFR: 0 0 0 0 Deferred Error APIC interrupts
2431+
MCE: 0 0 0 0 Machine check exceptions
2432+
MCP: 1 1 1 1 Machine check polls
2433+
ERR: 0
2434+
MIS: 0
2435+
2436+
PIN: 0 0 0 0 Posted-interrupt notification event
2437+
NPI: 0 0 0 0 Nested posted-interrupt event
2438+
PIW: 0 0 0 0 Posted-interrupt wakeup event
2439+
Mode: 644
2440+
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
24412441
Path: fixtures/proc/loadavg
24422442
Lines: 1
24432443
0.02 0.04 0.05 1/497 11947

0 commit comments

Comments
 (0)