Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f1140bf authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "trace: Add trace points for tasklet entry/exit"

parents e4ab9297 e9fa599d
Loading
Loading
Loading
Loading
+45 −0
Original line number Diff line number Diff line
@@ -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 */
+2 −0
Original line number Diff line number Diff line
@@ -523,7 +523,9 @@ static void tasklet_action_common(struct softirq_action *a,
				if (!test_and_clear_bit(TASKLET_STATE_SCHED,
							&t->state))
					BUG();
				trace_tasklet_entry(t->func);
				t->func(t->data);
				trace_tasklet_exit(t->func);
				tasklet_unlock(t);
				continue;
			}