Re: [PATCH] sched/Documentation: Add RT_RUNTIME_SHARE documentation
From: Zhang Qiao
Date: Sat Mar 23 2024 - 23:54:35 EST
hi, Jonathan,
在 2024/3/24 10:47, Zhang Qiao 写道:
>
> Zhang Qiao <zhangqiao22@xxxxxxxxxx> writes:
>
>> RT_RUNTIME_SHARE is an important strategy for rt bandwidth, and
>> we should document this sched feature.
>>
>> Signed-off-by: Zhang Qiao <zhangqiao22@xxxxxxxxxx>
>> ---
>> Documentation/scheduler/sched-rt-group.rst | 11 +++++++++++
>> 1 file changed, 11 insertions(+)
>>
>> diff --git a/Documentation/scheduler/sched-rt-group.rst b/Documentation/scheduler/sched-rt-group.rst
>> index d685609ed3d7..4d8eceb71f5e 100644
>> --- a/Documentation/scheduler/sched-rt-group.rst
>> +++ b/Documentation/scheduler/sched-rt-group.rst
>> @@ -12,6 +12,7 @@ Real-Time group scheduling
>> 2.1 System-wide settings
>> 2.2 Default behaviour
>> 2.3 Basis for grouping tasks
>> + 2.4 RT_RUNTIME_SHARE sched feature
>> 3. Future plans
>>
>>
>> @@ -146,6 +147,16 @@ For now, this can be simplified to just the following (but see Future plans):
>>
>> \Sum_{i} runtime_{i} <= global_runtime
>>
>> +2.4 RT_RUNTIME_SHARE sched feature
>> +----------------------------
>> +
>> +RT_RUNTIME_SHARE allows a cpu borrows rt-runtime from other cpus if it runs
>> +out of its own rt-runtime.
>> +
>> +With this feature enabled, a rt-task probably hits 100% cpu usage and starves
>> +per-cpu tasks like kworkers, as a result, it may hang up the whole system.
>> +Therefore, in order to avoid such exception, recommand to disable this feature
>> +by default unless you really know what you're up to.
>
> So this doesn't appear to have been picked up by anybody...should I
> carry it in docs, or is there some other reason why it hasn't gone in?
>
I'm not exactly sure why it wasn't added in docs before.
In my opinion, the RT_RUNTIME_SHARE sched features and sched_rt_period_us/sched_rt_runtime_us
parameters are both important parameters of rt bandwidth,it will affect the quota of rt tasks,
and improper configuration may cause the system hang up. So I think it's necessary to add it
in Documentation/scheduler/sched-rt-group.rst.
Thanks,
Qiao.
> Thanks,
>
> jon
> .
>