Messages in this thread | | | Date | Fri, 17 Apr 2009 15:45:57 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH v3 1/1] ftrace, workqueuetrace: Make workqueue tracepoints use TRACE_EVENT macro |
| |
* Zhaolei <zhaolei@cn.fujitsu.com> wrote:
> +TRACE_EVENT(workqueue_insertion, > +TRACE_EVENT(workqueue_execution, > +TRACE_EVENT(workqueue_creation, > +TRACE_EVENT(workqueue_destruction,
I'm missing all the worklet tracepoints i suggested. (and i think which you had in earlier versions)
Basically, i'd suggest the following complete set of events instead:
TRACE_EVENT(workqueue_create TRACE_EVENT(workqueue_flush /* NEW */ TRACE_EVENT(workqueue_destroy
TRACE_EVENT(worklet_enqueue /* NEW */ TRACE_EVENT(worklet_enqueue_delayed /* NEW */
TRACE_EVENT(worklet_execute /* instead of workqueue_execution */ TRACE_EVENT(worklet_complete /* NEW */
TRACE_EVENT(worklet_cancel /* NEW */
This allows the understanding of the life cycle of a workqueue and of worklets that enter that workqueue. Note the distinction between workqueue and worklet (work) - that is essential.
The parameters of the events are obvious, with one detail: i'd suggest a 'cpu' parameter to the enqueue events, to allow the mapping of the _on(..cpu) variants too.
I would not bother with schedule_on_each_cpu() instrumentation - it's rarely used.
Ingo
| |