diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2008-09-29 11:31:41 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2008-10-20 05:51:30 -0400 |
commit | c5b77a3d3a716a5c61a1999d7f2a78e9c39fd1b0 (patch) | |
tree | 14e0c3d2c504fded2dd208c774a38c183f496183 /kernel/time | |
parent | e67ef25a35b949561a9bd77693523ec94ab4a278 (diff) |
timer_list: print cpu number of clockevents device
The per cpu clock events device output of timer_list lacks an
association of the device to the cpu which is annoying when looking at
the output of /proc/timer_list from a 128 way system.
Add the CPU number info and mark the broadcast device in the device
list printout.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/time')
-rw-r--r-- | kernel/time/timer_list.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/kernel/time/timer_list.c b/kernel/time/timer_list.c index ec9ea6cadd85..5479c6e7a023 100644 --- a/kernel/time/timer_list.c +++ b/kernel/time/timer_list.c | |||
@@ -184,12 +184,16 @@ static void print_cpu(struct seq_file *m, int cpu, u64 now) | |||
184 | 184 | ||
185 | #ifdef CONFIG_GENERIC_CLOCKEVENTS | 185 | #ifdef CONFIG_GENERIC_CLOCKEVENTS |
186 | static void | 186 | static void |
187 | print_tickdevice(struct seq_file *m, struct tick_device *td) | 187 | print_tickdevice(struct seq_file *m, struct tick_device *td, int cpu) |
188 | { | 188 | { |
189 | struct clock_event_device *dev = td->evtdev; | 189 | struct clock_event_device *dev = td->evtdev; |
190 | 190 | ||
191 | SEQ_printf(m, "\n"); | 191 | SEQ_printf(m, "\n"); |
192 | SEQ_printf(m, "Tick Device: mode: %d\n", td->mode); | 192 | SEQ_printf(m, "Tick Device: mode: %d\n", td->mode); |
193 | if (cpu < 0) | ||
194 | SEQ_printf(m, "Broadcast device\n"); | ||
195 | else | ||
196 | SEQ_printf(m, "Per CPU device: %d\n", cpu); | ||
193 | 197 | ||
194 | SEQ_printf(m, "Clock Event Device: "); | 198 | SEQ_printf(m, "Clock Event Device: "); |
195 | if (!dev) { | 199 | if (!dev) { |
@@ -223,7 +227,7 @@ static void timer_list_show_tickdevices(struct seq_file *m) | |||
223 | int cpu; | 227 | int cpu; |
224 | 228 | ||
225 | #ifdef CONFIG_GENERIC_CLOCKEVENTS_BROADCAST | 229 | #ifdef CONFIG_GENERIC_CLOCKEVENTS_BROADCAST |
226 | print_tickdevice(m, tick_get_broadcast_device()); | 230 | print_tickdevice(m, tick_get_broadcast_device(), -1); |
227 | SEQ_printf(m, "tick_broadcast_mask: %08lx\n", | 231 | SEQ_printf(m, "tick_broadcast_mask: %08lx\n", |
228 | tick_get_broadcast_mask()->bits[0]); | 232 | tick_get_broadcast_mask()->bits[0]); |
229 | #ifdef CONFIG_TICK_ONESHOT | 233 | #ifdef CONFIG_TICK_ONESHOT |
@@ -233,7 +237,7 @@ static void timer_list_show_tickdevices(struct seq_file *m) | |||
233 | SEQ_printf(m, "\n"); | 237 | SEQ_printf(m, "\n"); |
234 | #endif | 238 | #endif |
235 | for_each_online_cpu(cpu) | 239 | for_each_online_cpu(cpu) |
236 | print_tickdevice(m, tick_get_device(cpu)); | 240 | print_tickdevice(m, tick_get_device(cpu), cpu); |
237 | SEQ_printf(m, "\n"); | 241 | SEQ_printf(m, "\n"); |
238 | } | 242 | } |
239 | #else | 243 | #else |