diff mbox series

[J/realtime] UBUNTU: [Config] realtime: enable CONFIG_RT_GROUP_SCHED

Message ID 20220113122153.137498-1-krzysztof.kozlowski@canonical.com
State New
Headers show
Series [J/realtime] UBUNTU: [Config] realtime: enable CONFIG_RT_GROUP_SCHED | expand

Commit Message

Krzysztof Kozlowski Jan. 13, 2022, 12:21 p.m. UTC
The RT_GROUP_SCHED (Real-Time group scheduling) allows explicitly
allocate real CPU bandwidth to task groups.  This might be useful for
workloads consisting of separate realtime tasks.

It has however a drawback of requiring root user to allocate realtime
bandwidth for other realtime users, via the CGroup interface.

See also: Documentation/scheduler/sched-rt-group.rst

BugLink: https://bugs.launchpad.net/bugs/1957788
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
---
 debian.realtime/config/annotations          | 2 ++
 debian.realtime/config/config.common.ubuntu | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

Comments

Tim Gardner Jan. 13, 2022, 1:25 p.m. UTC | #1
Acked-by: Tim Gardner <tim.gardner@canonical.com>

There was an attempt to enable this config for Azure tuned kernels but 
it was reverted after noticing a regression with the ubuntu_ltp_stable 
sched test. Investigating that regression hasn't bubbled up to the top 
of my to-do list yet, so I'll be interested to know if you can root 
cause the regression (or fix the test).

rtg

On 1/13/22 5:21 AM, Krzysztof Kozlowski wrote:
> The RT_GROUP_SCHED (Real-Time group scheduling) allows explicitly
> allocate real CPU bandwidth to task groups.  This might be useful for
> workloads consisting of separate realtime tasks.
> 
> It has however a drawback of requiring root user to allocate realtime
> bandwidth for other realtime users, via the CGroup interface.
> 
> See also: Documentation/scheduler/sched-rt-group.rst
> 
> BugLink: https://bugs.launchpad.net/bugs/1957788
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> ---
>   debian.realtime/config/annotations          | 2 ++
>   debian.realtime/config/config.common.ubuntu | 2 +-
>   2 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/debian.realtime/config/annotations b/debian.realtime/config/annotations
> index 82c1e5ed49ae..365230cfe657 100644
> --- a/debian.realtime/config/annotations
> +++ b/debian.realtime/config/annotations
> @@ -25,3 +25,5 @@ CONFIG_NO_HZ_FULL                               policy<{'amd64': 'y', 'arm64': '
>   CONFIG_NO_HZ_FULL                               mark<ENFORCED>
>   CONFIG_RCU_NOCB_CPU                             policy<{'amd64': 'y', 'arm64': 'y'}>
>   CONFIG_RCU_NOCB_CPU                             mark<ENFORCED>
> +CONFIG_RT_GROUP_SCHED                           policy<{'amd64': 'y', 'arm64': 'y'}>
> +CONFIG_RT_GROUP_SCHED                           mark<ENFORCED>
> diff --git a/debian.realtime/config/config.common.ubuntu b/debian.realtime/config/config.common.ubuntu
> index f494c4d8f058..2142f943d375 100644
> --- a/debian.realtime/config/config.common.ubuntu
> +++ b/debian.realtime/config/config.common.ubuntu
> @@ -8526,7 +8526,7 @@ CONFIG_RTW89_DEBUG=y
>   CONFIG_RTW89_DEBUGFS=y
>   CONFIG_RTW89_DEBUGMSG=y
>   CONFIG_RTW89_PCI=m
> -# CONFIG_RT_GROUP_SCHED is not set
> +CONFIG_RT_GROUP_SCHED=y
>   CONFIG_RT_MUTEXES=y
>   CONFIG_RUNTIME_TESTING_MENU=y
>   CONFIG_RWSEM_SPIN_ON_OWNER=y
>
Krzysztof Kozlowski Jan. 13, 2022, 1:37 p.m. UTC | #2
On 13/01/2022 14:25, Tim Gardner wrote:
> Acked-by: Tim Gardner <tim.gardner@canonical.com>
> 
> There was an attempt to enable this config for Azure tuned kernels but 
> it was reverted after noticing a regression with the ubuntu_ltp_stable 
> sched test. Investigating that regression hasn't bubbled up to the top 
> of my to-do list yet, so I'll be interested to know if you can root 
> cause the regression (or fix the test).
> 

Thanks for pointing this out. I'll check the issue with RT kernel.


Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/debian.realtime/config/annotations b/debian.realtime/config/annotations
index 82c1e5ed49ae..365230cfe657 100644
--- a/debian.realtime/config/annotations
+++ b/debian.realtime/config/annotations
@@ -25,3 +25,5 @@  CONFIG_NO_HZ_FULL                               policy<{'amd64': 'y', 'arm64': '
 CONFIG_NO_HZ_FULL                               mark<ENFORCED>
 CONFIG_RCU_NOCB_CPU                             policy<{'amd64': 'y', 'arm64': 'y'}>
 CONFIG_RCU_NOCB_CPU                             mark<ENFORCED>
+CONFIG_RT_GROUP_SCHED                           policy<{'amd64': 'y', 'arm64': 'y'}>
+CONFIG_RT_GROUP_SCHED                           mark<ENFORCED>
diff --git a/debian.realtime/config/config.common.ubuntu b/debian.realtime/config/config.common.ubuntu
index f494c4d8f058..2142f943d375 100644
--- a/debian.realtime/config/config.common.ubuntu
+++ b/debian.realtime/config/config.common.ubuntu
@@ -8526,7 +8526,7 @@  CONFIG_RTW89_DEBUG=y
 CONFIG_RTW89_DEBUGFS=y
 CONFIG_RTW89_DEBUGMSG=y
 CONFIG_RTW89_PCI=m
-# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_RT_GROUP_SCHED=y
 CONFIG_RT_MUTEXES=y
 CONFIG_RUNTIME_TESTING_MENU=y
 CONFIG_RWSEM_SPIN_ON_OWNER=y