mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 16:44:58 +02:00
sched_deadline, docs: add affinity setting with cgroup2 cpuset controller
Setting the cpu affinity mask of a SCHED_DEADLINE process using the cgroup v1 cpuset controller is already detailed. Add similar information for cgroup v2's cpuset controller. Signed-off-by: Shashank Balaji <shashank.mahadasyam@sony.com> Reviewed-by: Juri Lelli <juri.lelli@redhat.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Link: https://lore.kernel.org/r/20250527-sched-deadline-cpu-affinity-v2-2-b8b40a4feefa@sony.com
This commit is contained in:
parent
ab8531cdb1
commit
0116765035
|
|
@ -20,7 +20,8 @@ Deadline Task Scheduling
|
||||||
4.3 Default behavior
|
4.3 Default behavior
|
||||||
4.4 Behavior of sched_yield()
|
4.4 Behavior of sched_yield()
|
||||||
5. Tasks CPU affinity
|
5. Tasks CPU affinity
|
||||||
5.1 SCHED_DEADLINE and cpusets HOWTO
|
5.1 Using cgroup v1 cpuset controller
|
||||||
|
5.2 Using cgroup v2 cpuset controller
|
||||||
6. Future plans
|
6. Future plans
|
||||||
A. Test suite
|
A. Test suite
|
||||||
B. Minimal main()
|
B. Minimal main()
|
||||||
|
|
@ -671,12 +672,15 @@ Deadline Task Scheduling
|
||||||
5. Tasks CPU affinity
|
5. Tasks CPU affinity
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
-deadline tasks cannot have an affinity mask smaller that the entire
|
Deadline tasks cannot have a cpu affinity mask smaller than the root domain they
|
||||||
root_domain they are created on. However, affinities can be specified
|
are created on. So, using ``sched_setaffinity(2)`` won't work. Instead, the
|
||||||
through the cpuset facility (Documentation/admin-guide/cgroup-v1/cpusets.rst).
|
the deadline task should be created in a restricted root domain. This can be
|
||||||
|
done using the cpuset controller of either cgroup v1 (deprecated) or cgroup v2.
|
||||||
|
See :ref:`Documentation/admin-guide/cgroup-v1/cpusets.rst <cpusets>` and
|
||||||
|
:ref:`Documentation/admin-guide/cgroup-v2.rst <cgroup-v2>` for more information.
|
||||||
|
|
||||||
5.1 SCHED_DEADLINE and cpusets HOWTO
|
5.1 Using cgroup v1 cpuset controller
|
||||||
------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
An example of a simple configuration (pin a -deadline task to CPU0) follows::
|
An example of a simple configuration (pin a -deadline task to CPU0) follows::
|
||||||
|
|
||||||
|
|
@ -693,6 +697,19 @@ Deadline Task Scheduling
|
||||||
echo $$ > cpu0/tasks
|
echo $$ > cpu0/tasks
|
||||||
chrt --sched-runtime 100000 --sched-period 200000 --deadline 0 yes > /dev/null
|
chrt --sched-runtime 100000 --sched-period 200000 --deadline 0 yes > /dev/null
|
||||||
|
|
||||||
|
5.2 Using cgroup v2 cpuset controller
|
||||||
|
-------------------------------------
|
||||||
|
|
||||||
|
Assuming the cgroup v2 root is mounted at ``/sys/fs/cgroup``.
|
||||||
|
|
||||||
|
cd /sys/fs/cgroup
|
||||||
|
echo '+cpuset' > cgroup.subtree_control
|
||||||
|
mkdir deadline_group
|
||||||
|
echo 0 > deadline_group/cpuset.cpus
|
||||||
|
echo 'root' > deadline_group/cpuset.cpus.partition
|
||||||
|
echo $$ > deadline_group/cgroup.procs
|
||||||
|
chrt --sched-runtime 100000 --sched-period 200000 --deadline 0 yes > /dev/null
|
||||||
|
|
||||||
6. Future plans
|
6. Future plans
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user