Blame view
fs/proc/softirqs.c
741 Bytes
b24413180
|
1 |
// SPDX-License-Identifier: GPL-2.0 |
d3d64df21
|
2 3 4 5 6 7 8 9 10 11 12 |
#include <linux/init.h> #include <linux/kernel_stat.h> #include <linux/proc_fs.h> #include <linux/seq_file.h> /* * /proc/softirqs ... display the number of softirqs */ static int show_softirqs(struct seq_file *p, void *v) { int i, j; |
9d6de12f7
|
13 |
seq_puts(p, " "); |
d3d64df21
|
14 15 |
for_each_possible_cpu(i) seq_printf(p, "CPU%-8d", i); |
9d6de12f7
|
16 17 |
seq_putc(p, ' '); |
d3d64df21
|
18 19 |
for (i = 0; i < NR_SOFTIRQS; i++) { |
19cd56c48
|
20 |
seq_printf(p, "%12s:", softirq_to_name[i]); |
d3d64df21
|
21 22 |
for_each_possible_cpu(j) seq_printf(p, " %10u", kstat_softirqs_cpu(i, j)); |
9d6de12f7
|
23 24 |
seq_putc(p, ' '); |
d3d64df21
|
25 26 27 |
} return 0; } |
d3d64df21
|
28 29 |
static int __init proc_softirqs_init(void) { |
3f3942aca
|
30 |
proc_create_single("softirqs", 0, NULL, show_softirqs); |
d3d64df21
|
31 32 |
return 0; } |
abaf3787a
|
33 |
fs_initcall(proc_softirqs_init); |