Thread (13 messages) 13 messages, 5 authors, 2011-09-02

Re: [PATCH 3/3] trace points: power: remove 'cpu_id' from trace_cpu_idle

From: Thomas Renninger <hidden>
Date: 2011-08-22 08:27:48
Also in: lkml

On Saturday, August 20, 2011 04:40:09 AM Ming Lei wrote:
Hi,

2011/8/20 Thomas Renninger [off-list ref]:
quoted
On Friday, August 19, 2011 05:04:04 PM tom.leiming@gmail.com wrote:
quoted
From: Ming Lei <tom.leiming@gmail.com>

This patch removes the 'cpu_id' parameter of the cpu_idle
trace point, based on the ideas below:

- the cpu_id which is passed to trace point is always the current
  cpu
Are you sure this will always be true?
It is sure at least now,  the only place to pass 'dev->cpu' is inside
cpuidle_idle_call,
It was known that cpu_id is always the current cpu with current 
implementation when this got introduced.
But the perf events API must not change back and forth for userspace 
compatibility. Therefore the cpu_id was added in case
that future implementations want to pass info where the current cpu
is not the cpu which is sent to the sleep state.
smp_processor_id() can't be used safely in preemptible context.
I expect the only side effect that could happen is that if smp_process_id
is interrupted you get the wrong core id on a cpu idle trace event.
This only happens if cpuidle is not used and even then should happen
very rarely, nothing to worry for a debug tool like that.
And it should get fixed if these idle functions get fully integrated into
cpuidle at some point of time.

   Thomas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help