Re: [PATCH] sched/rt: Clean up usage of rt_task()

Peter Zijlstra
2024-05-15T08:32:50Z

On Tue, May 14, 2024 at 07:58:51PM -0400, Phil Auld wrote:
>
> Hi Qais,
>
> On Wed, May 15, 2024 at 12:41:12AM +0100 Qais Yousef wrote:
> > rt_task() checks if a task has RT priority. But depends on your
> > dictionary, this could mean it belongs to RT class, or is a 'realtime'
> > task, which includes RT and DL classes.
> >
> > Since this has caused some confusion already on discussion [1], it
> > seemed a clean up is due.
> >
> > I define the usage of rt_task() to be tasks that belong to RT class.
> > Make sure that it returns true only for RT class and audit the users and
> > replace them with the new realtime_task() which returns true for RT and
> > DL classes - the old behavior. Introduce similar realtime_prio() to
> > create similar distinction to rt_prio() and update the users.
>
> I think making the difference clear is good. However, I think rt_task() is
> a better name. We have dl_task() still. And rt tasks are things managed
> by rt.c, basically. Not realtime.c :) I know that doesn't work for deadline.c
> and dl_ but this change would be the reverse of that pattern.

It's going to be a mess either way around, but I think rt_task() and
dl_task() being distinct is more sensible than the current overlap.

> > Move MAX_DL_PRIO to prio.h so it can be used in the new definitions.
> >
> > Document the functions to make it more obvious what is the difference
> > between them. PI-boosted tasks is a factor that must be taken into
> > account when choosing which function to use.
> >
> > Rename task_is_realtime() to task_has_realtime_policy() as the old name
> > is confusing against the new realtime_task().

realtime_task_policy() perhaps?