Messages in this thread | | | Date | Tue, 26 Jul 2011 15:38:58 +0900 | From | KOSAKI Motohiro <> | Subject | Re: [PATCH] proc/softirqs: only show state for online cpus |
| |
(2011/07/26 15:14), Yong Zhang wrote: > 2011/7/26 KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>: >>> Like /proc/interrupts, no need to output data for nobody. >>> >>> Signed-off-by: Yong Zhang <yong.zhang0@gmail.com> >>> Cc: Andrew Morton <akpm@linux-foundation.org> >>> Cc: Keika Kobayashi <kobayashi.kk@ncos.nec.co.jp> >>> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> >> >> If the cpu never be onlined, its statistics always 0. Then, it definitely > > Yeah, so your screen may contain noise.
One question. Is this big matter? Who see /proc/softirqs and /proc/interrupts directly? (i.e. by 'cat' command).
>> no value. In the other hand, if the cpu was offlined dynamically, we don't >> know the user want to know the cpus's statistics or not. > > Same to /proc/interrupts :) > > IMHO, if user want to check the value of offline-cpu, maybe that means > he want to check the state of the whole system, /proc/stat should be the > right choice. /proc/{softirqs,interrupts} is just for immediate state. > >> Anyway, it's incompatibility change. > > Yup, I should have marked the patch with RFC :)
And I should have remarked I don't dislike this patch so strongly, so if kobayashi-san who original /proc/softirqs author ack you, I'm going to second him.
Offtopic, /proc/interrupt should be protected by get_online_cpus(). Otherwise the header (i.e. cpu number) and the actual statistics fields can be mismatched likes following. Am I missing something?
CPU0 CPU1 CPU2 0: 14286646 14747155 0 IO-APIC-edge timer 1: 6 6 IO-APIC-edge i8042
^ | cpu2 was offlined dynamically at the same time.
| |