kernel/sched/deadline.c | 3 +++ 1 file changed, 3 insertions(+)
From: kuyo chang <kuyo.chang@mediatek.com>
The DL server is introduced as a replacement for realtime throttling.
When RT throttling is activated, a message
"sched: RT throttling activated" is shown. However, it is currently
difficult for users to know when the DL server is activated.
This patch adds a similar message to indicate when the DL server
is activated, which helps users debug RT/CFS contention issues.
Signed-off-by: kuyo chang <kuyo.chang@mediatek.com>
---
kernel/sched/deadline.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
index e2d51f4306b3..8e0de6cdb980 100644
--- a/kernel/sched/deadline.c
+++ b/kernel/sched/deadline.c
@@ -2042,6 +2042,9 @@ enqueue_dl_entity(struct sched_dl_entity *dl_se, int flags)
}
__enqueue_dl_entity(dl_se);
+
+ if (dl_server(dl_se))
+ printk_deferred_once("sched: dl_server activated\n");
}
static void dequeue_dl_entity(struct sched_dl_entity *dl_se, int flags)
--
2.45.2
Hi, On 05/08/25 23:53, Kuyo Chang wrote: > From: kuyo chang <kuyo.chang@mediatek.com> > > The DL server is introduced as a replacement for realtime throttling. > When RT throttling is activated, a message > "sched: RT throttling activated" is shown. However, it is currently > difficult for users to know when the DL server is activated. > > This patch adds a similar message to indicate when the DL server > is activated, which helps users debug RT/CFS contention issues. > > Signed-off-by: kuyo chang <kuyo.chang@mediatek.com> > --- > kernel/sched/deadline.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c > index e2d51f4306b3..8e0de6cdb980 100644 > --- a/kernel/sched/deadline.c > +++ b/kernel/sched/deadline.c > @@ -2042,6 +2042,9 @@ enqueue_dl_entity(struct sched_dl_entity *dl_se, int flags) > } > > __enqueue_dl_entity(dl_se); > + > + if (dl_server(dl_se)) > + printk_deferred_once("sched: dl_server activated\n"); > } Not sure if we want/need this, but, if we do, I believe fair_server_pick_task() might be a better place to put it, as it's really when the dl-server is called to do its job. Thanks, Juri
On Thu, 2025-08-07 at 08:15 +0100, Juri Lelli wrote: > > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > Hi, > > On 05/08/25 23:53, Kuyo Chang wrote: > > From: kuyo chang <kuyo.chang@mediatek.com> > > > > The DL server is introduced as a replacement for realtime > > throttling. > > When RT throttling is activated, a message > > "sched: RT throttling activated" is shown. However, it is currently > > difficult for users to know when the DL server is activated. > > > > This patch adds a similar message to indicate when the DL server > > is activated, which helps users debug RT/CFS contention issues. > > > > Signed-off-by: kuyo chang <kuyo.chang@mediatek.com> > > --- > > kernel/sched/deadline.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c > > index e2d51f4306b3..8e0de6cdb980 100644 > > --- a/kernel/sched/deadline.c > > +++ b/kernel/sched/deadline.c > > @@ -2042,6 +2042,9 @@ enqueue_dl_entity(struct sched_dl_entity > > *dl_se, int flags) > > } > > > > __enqueue_dl_entity(dl_se); > > + > > + if (dl_server(dl_se)) > > + printk_deferred_once("sched: dl_server activated\n"); > > } > > Not sure if we want/need this, but, if we do, I believe > fair_server_pick_task() might be a better place to put it, as it's > really when the dl-server is called to do its job. > Thanks for your suggestion, maybe the minor patch as below diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c index e2d51f4306b3..82d1091e56f5 100644 --- a/kernel/sched/deadline.c +++ b/kernel/sched/deadline.c @@ -2395,6 +2395,7 @@ static struct task_struct *__pick_task_dl(struct rq *rq) goto again; } rq->dl_server = dl_se; + printk_deferred_once("sched: dl_server activated\n"); } else { p = dl_task_of(dl_se); } -- I believe the debug message could help to verify that the DL server is actually working. It will be a great help for users to debug RT/FAIR contention issues when this clue message occurs. > Thanks, > Juri >
On 07/08/25 15:52, Kuyo Chang wrote: > On Thu, 2025-08-07 at 08:15 +0100, Juri Lelli wrote: > > > > External email : Please do not click links or open attachments until > > you have verified the sender or the content. > > > > > > Hi, > > > > On 05/08/25 23:53, Kuyo Chang wrote: > > > From: kuyo chang <kuyo.chang@mediatek.com> > > > > > > The DL server is introduced as a replacement for realtime > > > throttling. > > > When RT throttling is activated, a message > > > "sched: RT throttling activated" is shown. However, it is currently > > > difficult for users to know when the DL server is activated. > > > > > > This patch adds a similar message to indicate when the DL server > > > is activated, which helps users debug RT/CFS contention issues. > > > > > > Signed-off-by: kuyo chang <kuyo.chang@mediatek.com> > > > --- > > > kernel/sched/deadline.c | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c > > > index e2d51f4306b3..8e0de6cdb980 100644 > > > --- a/kernel/sched/deadline.c > > > +++ b/kernel/sched/deadline.c > > > @@ -2042,6 +2042,9 @@ enqueue_dl_entity(struct sched_dl_entity > > > *dl_se, int flags) > > > } > > > > > > __enqueue_dl_entity(dl_se); > > > + > > > + if (dl_server(dl_se)) > > > + printk_deferred_once("sched: dl_server activated\n"); > > > } > > > > Not sure if we want/need this, but, if we do, I believe > > fair_server_pick_task() might be a better place to put it, as it's > > really when the dl-server is called to do its job. > > > > Thanks for your suggestion, maybe the minor patch as below > > diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c > index e2d51f4306b3..82d1091e56f5 100644 > --- a/kernel/sched/deadline.c > +++ b/kernel/sched/deadline.c > @@ -2395,6 +2395,7 @@ static struct task_struct *__pick_task_dl(struct > rq *rq) > goto again; > } > rq->dl_server = dl_se; > + printk_deferred_once("sched: dl_server activated\n"); Guess it could work. If we are going to add this, maybe printing information about the task dl-server is servicing might also be interesting.
© 2016 - 2025 Red Hat, Inc.