Re: [cip-dev] [isar-cip-core][PATCH 3/3] linux-cip: Switch to out-of-tree PREEMPT-RT config fragment

Quirin Gylstorff <[email protected]> Mon, 3 Aug 2026 10:57:30 +0200
Newsgroups org.cip-project.lists.cip-dev
Message-ID <[email protected]>

On 5/5/26 5:25 PM, Jan Kiszka via lists.cip-project.org wrote:
> From: Jan Kiszka <[email protected]>
> 
> We are now maintaining the PREEMPT-RT enabling config fragment in
> cip-kernel-config, for reuse kernel KernelCI. Switch to it, just bailing
> out in case the user asks for RT, does not use the CIP configs but also
> does not provide an alternative RT_FRAGMENT.
> 
> Signed-off-by: Jan Kiszka <[email protected]>
> ---
>   recipes-kernel/linux/cip-kernel-config.inc |  2 ++
>   recipes-kernel/linux/files/preempt-rt.cfg  | 30 ----------------------
>   recipes-kernel/linux/linux-cip-common.inc  |  9 +++++--
>   3 files changed, 9 insertions(+), 32 deletions(-)
>   delete mode 100644 recipes-kernel/linux/files/preempt-rt.cfg
> 
> diff --git a/recipes-kernel/linux/cip-kernel-config.inc b/recipes-kernel/linux/cip-kernel-config.inc
> index 34fb354a..32cad6c4 100644
> --- a/recipes-kernel/linux/cip-kernel-config.inc
> +++ b/recipes-kernel/linux/cip-kernel-config.inc
> @@ -32,3 +32,5 @@ KBUILD_DEPENDS:append = "${@ \
>   SRC_URI:append = " ${@ \
>       'file://no-module-signing.cfg' if bb.utils.to_boolean(d.getVar('NO_MODULE_SIGNING')) else '' \
>       }"
> +
> +RT_FRAGMENT ?= "${@'cip-kernel-config/cfg/preempt-rt.cfg' if bb.utils.to_boolean(d.getVar('USE_CIP_KERNEL_CONFIG')) else ''}"
> diff --git a/recipes-kernel/linux/files/preempt-rt.cfg b/recipes-kernel/linux/files/preempt-rt.cfg
> deleted file mode 100644
> index f5583657..00000000
> --- a/recipes-kernel/linux/files/preempt-rt.cfg
> +++ /dev/null
> @@ -1,30 +0,0 @@
> -#
> -# SPDX-License-Identifier: MIT
> -#
> -# >= 5.10
> -CONFIG_EXPERT=y
> -CONFIG_PREEMPT_RT=y
> -CONFIG_RT_GROUP_SCHED=n
> -CONFIG_CPU_ISOLATION=y
> -# <= 4.19
> -CONFIG_PREEMPT_RT_FULL=y
> -
> -CONFIG_DEBUG_ATOMIC_SLEEP=y
> -CONFIG_DEBUG_LOCK_ALLOC=n
> -CONFIG_PROVE_LOCKING=n
> -CONFIG_LOCKDEP=n
> -
> -CONFIG_CPU_FREQ=n
> -CONFIG_CPU_IDLE=n
> -
> -CONFIG_NO_HZ=n
> -CONFIG_HZ_PERIODIC=y
> -
> -CONFIG_HZ_250=y
> -CONFIG_HZ=250
> -
> -CONFIG_SUSPEND=n
> -CONFIG_HIBERNATION=n
> -CONFIG_PM=n
> -
> -CONFIG_SLUB=y
> diff --git a/recipes-kernel/linux/linux-cip-common.inc b/recipes-kernel/linux/linux-cip-common.inc
> index 4569b897..65335238 100644
> --- a/recipes-kernel/linux/linux-cip-common.inc
> +++ b/recipes-kernel/linux/linux-cip-common.inc
> @@ -1,7 +1,7 @@
>   #
>   # CIP Core, generic profile
>   #
> -# Copyright (c) Siemens AG, 2022-2025
> +# Copyright (c) Siemens AG, 2022-2026
>   #
>   # Authors:
>   #  Jan Kiszka <[email protected]>
> @@ -17,4 +17,9 @@ MAINTAINER = "cip-dev <[email protected]>"
>   
>   require recipes-kernel/linux/cip-kernel-config.inc
>   
> -SRC_URI += "${@'file://preempt-rt.cfg' if d.getVar('KERNEL_NAME') == 'cip-rt' else ''}"
> +KERNEL_CONFIG_FRAGMENTS:append = "${@(' ' + d.getVar('RT_FRAGMENT')) if d.getVar('KERNEL_NAME') == 'cip-rt' else ''}"
> +
> +python() {
> +    if d.getVar('RT_FRAGMENT') == '' and d.getVar('KERNEL_NAME') == 'cip-rt':
> +        bb.fatal("No RT_FRAGMENT provided for cip-rt kernel")
> +}
> 
This will lead if cip-rt is select in the downstream machine config to 
the following error messages:


ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_6.12-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: Parsing halted due to errors, see error messages above
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_6.1-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_5.10.258-cip74.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_4.4.302-cip112.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_6.1.175-cip57-rt30.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_4.4-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_6.12-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_6.1-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_5.10-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_4.4.302-cip111-rt61.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_6.12.94-cip26.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_4.19-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_6.1.175-cip57.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_4.19.325-cip134.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_4.19.325-cip132-rt48.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip_4.19-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_5.10.254-cip72-rt32.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_4.4-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel
ERROR: 
/work/build/../cip-core/recipes-kernel/linux/linux-cip-rt_5.10-cip-head.bb: 
No RT_FRAGMENT provided for cip-rt kernel

Was this intentionally done that way?

You can fix it with a linux-cip-rt_%.bbappend but normally downstream 
wants to use only `linux-cip-rt_6.12.%`.

Quirin

> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#22887): https://lists.cip-project.org/g/cip-dev/message/22887
> Mute This Topic: https://lists.cip-project.org/mt/119163092/1753640
> Group Owner: [email protected]
> Unsubscribe: https://lists.cip-project.org/g/cip-dev/unsub [[email protected]]
> -=-=-=-=-=-=-=-=-=-=-=-
>