Messages in this thread | | | Date | Tue, 17 Nov 2009 10:26:30 -0500 | From | Masami Hiramatsu <> | Subject | Re: [PATCH -tip 3/3] Add get_signal tracepoint |
| |
Ingo Molnar wrote: > > * Masami Hiramatsu <mhiramat@redhat.com> wrote: > >>> - signal IPI/wakeup events >> >> All signals might be used for IPI, isn't it? :-) > > I mean, to analyze the various dynamic delivery details of how a signal > send affects a target task: > > 1) which task/PID was selected to be woken > > 2) if the task got woken (from sleep) due to the signal sending > > 3) if it was already woken, whether it needed an IPI via kick_process()
Hmm, as far as I can see, some of these events can be caught by sched layer too. - trace_signal_send() will record target task. - wake_up_state() just calls try_to_wake_up(), and trace_sched_wakeup() will be called from it. - kick_process() might better have its own tracepoint.
And also, I think signal_wake_up() might not be a good tracepoint for signal event, since there is no signr. Moreover some signal_wake_up() caller(e.g. recalc_sigpending*) silently wake up processes :-(.
> What proportion of signals were wakeups and what proportion hit an > already running task is a relevant question to ask when analyzing the > performance characteristics of signals.
Hmm, does it really require wakeup events in signal layer? I think that we can analyze the characteristics by combination of signal events and sched events.
Thank you, -- Masami Hiramatsu
Software Engineer Hitachi Computer Products (America), Inc. Software Solutions Division
e-mail: mhiramat@redhat.com
| |