[PATCH] sched/rt: Add pid and comm when RT throttling activated

From: Yajun Deng
Date: Tue Dec 06 2022 - 03:38:26 EST


It is difficult to know which process consumes time when RT throttling
activated.

So add pid and comm for this case.

Signed-off-by: Yajun Deng <yajun.deng@xxxxxxxxx>
---
kernel/sched/rt.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
index ed2a47e4ddae..1f267ab1b59a 100644
--- a/kernel/sched/rt.c
+++ b/kernel/sched/rt.c
@@ -1012,6 +1012,7 @@ static int sched_rt_runtime_exceeded(struct rt_rq *rt_rq)

if (rt_rq->rt_time > runtime) {
struct rt_bandwidth *rt_b = sched_rt_bandwidth(rt_rq);
+ struct task_struct *curr = rq_of_rt_rq(rt_rq)->curr;

/*
* Don't actually throttle groups that have no runtime assigned
@@ -1019,7 +1020,8 @@ static int sched_rt_runtime_exceeded(struct rt_rq *rt_rq)
*/
if (likely(rt_b->rt_runtime)) {
rt_rq->rt_throttled = 1;
- printk_deferred_once("sched: RT throttling activated\n");
+ printk_deferred_once("pid: %d, comm: %s, sched: RT throttling activated\n",
+ curr->pid, curr->comm);
} else {
/*
* In case we did anyway, make it go away,
--
2.25.1