Skip to contentSkip to conversation

Isar update, RT config snippet from cip-kernel-configs

PATCH In review Jan Kiszka 2 participants 5 messages May 5 – Aug 3

lore
Share & tools
lore

Jan Kiszka

author
#0 lore raw

cover Isar update, RT config snippet from cip-kernel-configs

See patches for details.

Jan

Jan Kiszka (3):
Update Isar to 1.1-rc2
linux-cip: Update cip-kernel-config revision
linux-cip: Switch to out-of-tree PREEMPT-RT config fragment

 kas-cip.yml                                |  2 +-
 recipes-kernel/linux/cip-kernel-config.inc |  4 ++-
 recipes-kernel/linux/files/preempt-rt.cfg  | 30 ----------------------
 recipes-kernel/linux/linux-cip-common.inc  |  9 +++++--
 4 files changed, 11 insertions(+), 34 deletions(-)
 delete mode 100644 recipes-kernel/linux/files/preempt-rt.cfg
Signature · 1 line
2.47.3
author
#1 lore raw

PATCH 1/3 Update Isar to 1.1-rc2

From: Jan Kiszka <[email protected]>

Brings some valuable updates, e.g. for SBOM, skips the 1.0 deployment path glitches and provides upstream some additional test coverage.

---
 kas-cip.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
kas-cip.yml +1 -1
index a3e9b24e..4d47ea9b 100644
@@ -22,7 +22,7 @@ repos:
 
   isar:
     url: https://github.com/ilbers/isar.git
-    commit: 33ca03c711e34d38d303ca38c1259cb6c5fe55ef
+    commit: 22ee5352eab6c38ac395da60895d09bacfe7b201
     layers:
       meta:
 
Signature · 1 line
2.47.3
author
#2 lore raw

PATCH 2/3 linux-cip: Update cip-kernel-config revision

In reply to Jan Kiszka

From: Jan Kiszka <[email protected]>

This specifically brings centrally managed config fragments, first for PREEMPT-RT.

---
 recipes-kernel/linux/cip-kernel-config.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
recipes-kernel/linux/cip-kernel-config.inc +1 -1
index 5bff1805..34fb354a 100644
@@ -15,7 +15,7 @@ SRC_URI:append = " ${@ \
     if bb.utils.to_boolean(d.getVar('USE_CIP_KERNEL_CONFIG')) else '' \
     }"
 
-SRCREV_cip-kernel-config ?= "7742c0f098a3bae264dcb7db8128e99954249bb8"
+SRCREV_cip-kernel-config ?= "a292d21b5ef582b2e42be0f0404eb6fb19f0786f"
 
 do_fetch[vardeps] += "SRCREV_cip-kernel-config"
 
Signature · 1 line
2.47.3
author
#3 lore raw

PATCH 3/3 linux-cip: Switch to out-of-tree PREEMPT-RT config fragment

In reply to Jan Kiszka

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.

---
 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
recipes-kernel/linux/cip-kernel-config.inc +2 -0
index 34fb354a..32cad6c4 100644
@@ -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 ''}"
recipes-kernel/linux/files/preempt-rt.cfg deleted +0 -30
deleted file mode 100644
index f5583657..00000000
@@ -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
recipes-kernel/linux/linux-cip-common.inc +7 -2
index 4569b897..65335238 100644
@@ -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")
+}
Signature · 1 line
2.47.3
#4 lore raw

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

Quoted 76 lines · Jan Kiszka via lists.cip-project.org

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.

---
  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

recipes-kernel/linux/cip-kernel-config.inc +2 -0
index 34fb354a..32cad6c4 100644
@@ -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 ''}"
recipes-kernel/linux/files/preempt-rt.cfg deleted +0 -30
deleted file mode 100644
index f5583657..00000000
@@ -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
recipes-kernel/linux/linux-cip-common.inc +1 -1
index 4569b897..65335238 100644
@@ -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]>

recipes-kernel/linux/linux-cip-common.inc MAINTAINER = "cip-dev <[email protected]>" · line 25

Quoted 10 lines
recipes-kernel/linux/linux-cip-common.inc +6 -1
@@ -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

Quoted 10 lines

-=-=-=-=-=-=-=-=-=-=-=-
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]]
-=-=-=-=-=-=-=-=-=-=-=-