On Thu, 23 Aug 2018 15:09:57 +0200 Juri Lelli <juri.lelli@xxxxxxxxx> wrote: > On 23/08/18 15:00, luca abeni wrote: > > On Thu, 23 Aug 2018 14:37:39 +0200 > > Juri Lelli <juri.lelli@xxxxxxxxx> wrote: > > [...] > > > > > Maybe the existing system wide sched_rt_{period, > > > > > runtime}_us are enough? > > > > > > > > I do not know... A cgroup-based interface looks more powerful > > > > (and not so difficult to implement... :), and would allow the > > > > sysadmin to decide which users can use SCHED_DEADLINE, how much > > > > SCHED_DEADLINE bandwidth can each user/group use, etc... > > > > > > How about extending PAM limits instead? It looks like it's what > > > (e.g.) audio users rely on already [1]. It is maybe possible to > > > add dlruntime, dlperiod, dldeadline parameters in there? > > > > Ok, I do not know much about these PAM limits... Where can I find > > more information? > > The link I shared already gives some information, man pam_limits and > limits.conf also. > > > What do we need to implement exactly, to add these dlruntime, > > dlperiod, dldeadline parameters? > > Not sure yet "exactly" :-), but I'd say something along these lines > > https://elixir.bootlin.com/linux/latest/source/kernel/sched/core.c#L4198 Ok, thanks; I think I got it: we need to extend the "rlim" array (in signal_struct) adding fields for "RLIMIT_DLRUNTIME" and friends (actually, I think a "RLIMIT_UTILIZATION" field is also needed). And then we need to add checks for these fields in __sched_setscheduler(), etc... Maybe I am misunderstanding this stuff, but the cgroup-based approach looks simpler / more elegant :) Thanks, Luca