Commit bbf5254a authored by Michal Koutný's avatar Michal Koutný Committed by Jonathan Corbet
Browse files

Documentation: sched/RT: Update paragraphs about RT bandwidth control

This has slightly changed with the introduction of fair_server.
Update the most relevant parts.

Link: https://lore.kernel.org/r/Z0c8S8i3qt7SEU14@jlelli-thinkpadt14gen4.remote.csb/


Signed-off-by: default avatarMichal Koutný <mkoutny@suse.com>
Reviewed-by: default avatarJuri Lelli <juri.lelli@redhat.com>
Acked-by: default avatarJuri Lelli <juri.lelli@redhat.com>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/20241211170052.2449581-1-mkoutny@suse.com
parent 80568f47
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -591,12 +591,13 @@ Deadline Task Scheduling

 The system wide settings are configured under the /proc virtual file system.

 For now the -rt knobs are used for -deadline admission control and the
 -deadline runtime is accounted against the -rt runtime. We realize that this
 isn't entirely desirable; however, it is better to have a small interface for
 now, and be able to change it easily later. The ideal situation (see 5.) is to
 run -rt tasks from a -deadline server; in which case the -rt bandwidth is a
 direct subset of dl_bw.
 For now the -rt knobs are used for -deadline admission control and with
 CONFIG_RT_GROUP_SCHED the -deadline runtime is accounted against the (root)
 -rt runtime. With !CONFIG_RT_GROUP_SCHED the knob only serves for the -dl
 admission control. We realize that this isn't entirely desirable; however, it
 is better to have a small interface for now, and be able to change it easily
 later. The ideal situation (see 5.) is to run -rt tasks from a -deadline
 server; in which case the -rt bandwidth is a direct subset of dl_bw.

 This means that, for a root_domain comprising M CPUs, -deadline tasks
 can be created while the sum of their bandwidths stays below:
+4 −4
Original line number Diff line number Diff line
@@ -92,10 +92,10 @@ The system wide settings are configured under the /proc virtual file system:
/proc/sys/kernel/sched_rt_runtime_us:
  A global limit on how much time real-time scheduling may use. This is always
  less or equal to the period_us, as it denotes the time allocated from the
  period_us for the real-time tasks. Even without CONFIG_RT_GROUP_SCHED enabled,
  this will limit time reserved to real-time processes. With
  CONFIG_RT_GROUP_SCHED=y it signifies the total bandwidth available to all
  real-time groups.
  period_us for the real-time tasks. Without CONFIG_RT_GROUP_SCHED enabled,
  this only serves for admission control of deadline tasks. With
  CONFIG_RT_GROUP_SCHED=y it also signifies the total bandwidth available to
  all real-time groups.

  * Time is specified in us because the interface is s32. This gives an
    operating range from 1us to about 35 minutes.