Revert "Revert "ANDROID: trace: Add trace points for tasklet entry/exit""
This reverts commit 2cadcbac1a, as the
merge conflicts have been resolved.
Bug: 168521633
Change-Id: Ib17f36be69a9112cc5ea2a5a2d940b82b480c8f0
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
[elavila: Port to mainline]
Signed-off-by: J. Avila <elavila@google.com>
Signed-off-by: Shaleen Agrawal <shalagra@codeaurora.org>
This commit is contained in:
committed by
Todd Kjos
parent
0e25c12f4e
commit
07ecea7cb8
@@ -160,6 +160,51 @@ DEFINE_EVENT(softirq, softirq_raise,
|
||||
TP_ARGS(vec_nr)
|
||||
);
|
||||
|
||||
DECLARE_EVENT_CLASS(tasklet,
|
||||
|
||||
TP_PROTO(void *func),
|
||||
|
||||
TP_ARGS(func),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__field( void *, func)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__entry->func = func;
|
||||
),
|
||||
|
||||
TP_printk("function=%ps", __entry->func)
|
||||
);
|
||||
|
||||
DEFINE_EVENT(tasklet, tasklet_entry,
|
||||
|
||||
TP_PROTO(void *func),
|
||||
|
||||
TP_ARGS(func)
|
||||
);
|
||||
|
||||
DEFINE_EVENT(tasklet, tasklet_exit,
|
||||
|
||||
TP_PROTO(void *func),
|
||||
|
||||
TP_ARGS(func)
|
||||
);
|
||||
|
||||
DEFINE_EVENT(tasklet, tasklet_hi_entry,
|
||||
|
||||
TP_PROTO(void *func),
|
||||
|
||||
TP_ARGS(func)
|
||||
);
|
||||
|
||||
DEFINE_EVENT(tasklet, tasklet_hi_exit,
|
||||
|
||||
TP_PROTO(void *func),
|
||||
|
||||
TP_ARGS(func)
|
||||
);
|
||||
|
||||
#endif /* _TRACE_IRQ_H */
|
||||
|
||||
/* This part must be outside protection */
|
||||
|
||||
@@ -789,10 +789,15 @@ static void tasklet_action_common(struct softirq_action *a,
|
||||
if (tasklet_trylock(t)) {
|
||||
if (!atomic_read(&t->count)) {
|
||||
if (tasklet_clear_sched(t)) {
|
||||
if (t->use_callback)
|
||||
if (t->use_callback) {
|
||||
trace_tasklet_entry(t->callback);
|
||||
t->callback(t);
|
||||
else
|
||||
trace_tasklet_exit(t->callback);
|
||||
} else {
|
||||
trace_tasklet_entry(t->func);
|
||||
t->func(t->data);
|
||||
trace_tasklet_exit(t->func);
|
||||
}
|
||||
}
|
||||
tasklet_unlock(t);
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user