Add trace point to psi triggers. This is useful to observe the psi events in the kernel space.
Signed-off-by: Xuewen Yan <[email protected]> --- include/trace/events/sched.h | 5 +++++ kernel/sched/psi.c | 2 ++ 2 files changed, 7 insertions(+) diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h index 7b2645b50e78..c23cb2bc76fd 100644 --- a/include/trace/events/sched.h +++ b/include/trace/events/sched.h @@ -896,6 +896,11 @@ DECLARE_TRACE(sched_set_need_resched, TP_PROTO(struct task_struct *tsk, int cpu, int tif), TP_ARGS(tsk, cpu, tif)); +struct psi_trigger *t +DECLARE_TRACE(psi_event, + TP_PROTO(struct psi_trigger *t), + TP_ARGS(t)); + #endif /* _TRACE_SCHED_H */ /* This part must be outside protection */ diff --git a/kernel/sched/psi.c b/kernel/sched/psi.c index 59fdb7ebbf22..268fc1b9cf1d 100644 --- a/kernel/sched/psi.c +++ b/kernel/sched/psi.c @@ -509,6 +509,8 @@ static void update_triggers(struct psi_group *group, u64 now, if (now < t->last_event_time + t->win.size) continue; + trace_psi_event_tp(t); + /* Generate an event */ if (cmpxchg(&t->event, 0, 1) == 0) { if (t->of) -- 2.25.1
