* [xenomai-images][PATCH 0/2] Update to latest Isar
@ 2023-01-23 12:15 Florian Bezdeka
2023-01-23 12:15 ` [xenomai-images][PATCH 1/2] Mount rootfs for qemu based tests read-write Florian Bezdeka
2023-01-23 12:15 ` [xenomai-images][PATCH 2/2] Update Isar to latest next version - sbuild integration Florian Bezdeka
0 siblings, 2 replies; 4+ messages in thread
From: Florian Bezdeka @ 2023-01-23 12:15 UTC (permalink / raw)
To: xenomai; +Cc: Jan Kiszka, Florian Bezdeka
Hi all,
updating to latest Isar will allow us to base Xenomai images on Debian
bookworm. Debian bookworm will allow us to integrate and test remaining
y2038 stuff.
Best regards,
Florian
Florian Bezdeka (2):
Mount rootfs for qemu based tests read-write
Update Isar to latest next version - sbuild integration
kas.yml | 4 +--
recipes-kernel/linux/files/rules.tmpl | 11 ++++++++
recipes-kernel/linux/linux-xenomai.inc | 35 +++++++++-----------------
recipes-xenomai/xenomai/xenomai.inc | 8 ++----
tests/jobs/xenomai-qemu-amd64.yml | 4 +--
tests/jobs/xenomai-qemu-arm64.yml | 4 +--
tests/jobs/xenomai-qemu-armhf.yml | 4 +--
7 files changed, 33 insertions(+), 37 deletions(-)
create mode 100755 recipes-kernel/linux/files/rules.tmpl
--
2.39.0
^ permalink raw reply [flat|nested] 4+ messages in thread
* [xenomai-images][PATCH 1/2] Mount rootfs for qemu based tests read-write
2023-01-23 12:15 [xenomai-images][PATCH 0/2] Update to latest Isar Florian Bezdeka
@ 2023-01-23 12:15 ` Florian Bezdeka
2023-01-23 12:15 ` [xenomai-images][PATCH 2/2] Update Isar to latest next version - sbuild integration Florian Bezdeka
1 sibling, 0 replies; 4+ messages in thread
From: Florian Bezdeka @ 2023-01-23 12:15 UTC (permalink / raw)
To: xenomai; +Cc: Jan Kiszka, Florian Bezdeka
Adding "rw" to the kernel cmdline for qemu based LAVA tests is a
workaround for a current Isar regression. The rootfs entry is currently
removed from /etc/fstab so the rootfs stayed in read-only mode.
Signed-off-by: Florian Bezdeka <florian.bezdeka@siemens.com>
---
tests/jobs/xenomai-qemu-amd64.yml | 4 ++--
tests/jobs/xenomai-qemu-arm64.yml | 4 ++--
tests/jobs/xenomai-qemu-armhf.yml | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/tests/jobs/xenomai-qemu-amd64.yml b/tests/jobs/xenomai-qemu-amd64.yml
index 166d472..b989576 100644
--- a/tests/jobs/xenomai-qemu-amd64.yml
+++ b/tests/jobs/xenomai-qemu-amd64.yml
@@ -1,7 +1,7 @@
#
# Xenomai Real-Time System
#
-# Copyright (c) Siemens AG, 2019
+# Copyright (c) Siemens AG, 2019-2023
#
# Authors:
# Quirin Gylstorff <quirin.gylstorff@siemens.com>
@@ -46,7 +46,7 @@ actions:
to: tmpfs
images:
kernel:
- image_arg: -kernel {kernel} -append "root=/dev/disk/by-path/pci-0000:00:1f.2-ata-6 console=ttyS0,115200 console=tty0"
+ image_arg: -kernel {kernel} -append "root=/dev/disk/by-path/pci-0000:00:1f.2-ata-6 console=ttyS0,115200 console=tty0 rw"
url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}-vmlinuz
initrd:
image_arg: -initrd {initrd}
diff --git a/tests/jobs/xenomai-qemu-arm64.yml b/tests/jobs/xenomai-qemu-arm64.yml
index a1dcc1c..5bf513e 100644
--- a/tests/jobs/xenomai-qemu-arm64.yml
+++ b/tests/jobs/xenomai-qemu-arm64.yml
@@ -1,7 +1,7 @@
#
# Xenomai Real-Time System
#
-# Copyright (c) Siemens AG, 2019
+# Copyright (c) Siemens AG, 2019-2023
#
# Authors:
# Quirin Gylstorff <quirin.gylstorff@siemens.com>
@@ -50,7 +50,7 @@ actions:
to: tmpfs
images:
kernel:
- image_arg: -kernel {kernel} -append "root=/dev/vda"
+ image_arg: -kernel {kernel} -append "root=/dev/vda rw"
url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}-vmlinux
initrd:
image_arg: -initrd {initrd}
diff --git a/tests/jobs/xenomai-qemu-armhf.yml b/tests/jobs/xenomai-qemu-armhf.yml
index 3b5bc10..1ab35bd 100644
--- a/tests/jobs/xenomai-qemu-armhf.yml
+++ b/tests/jobs/xenomai-qemu-armhf.yml
@@ -1,7 +1,7 @@
#
# Xenomai Real-Time System
#
-# Copyright (c) Siemens AG, 2019
+# Copyright (c) Siemens AG, 2019-2023
#
# Authors:
# Quirin Gylstorff <quirin.gylstorff@siemens.com>
@@ -46,7 +46,7 @@ actions:
to: tmpfs
images:
kernel:
- image_arg: -kernel {kernel} -append "root=/dev/vdb"
+ image_arg: -kernel {kernel} -append "root=/dev/vdb rw"
url: ${DEPLOY_URL}/${ISAR_IMAGE}-${ISAR_DISTRIBUTION}-${TARGET}-vmlinuz
initrd:
image_arg: -initrd {initrd}
--
2.39.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [xenomai-images][PATCH 2/2] Update Isar to latest next version - sbuild integration
2023-01-23 12:15 [xenomai-images][PATCH 0/2] Update to latest Isar Florian Bezdeka
2023-01-23 12:15 ` [xenomai-images][PATCH 1/2] Mount rootfs for qemu based tests read-write Florian Bezdeka
@ 2023-01-23 12:15 ` Florian Bezdeka
2023-02-01 10:18 ` Jan Kiszka
1 sibling, 1 reply; 4+ messages in thread
From: Florian Bezdeka @ 2023-01-23 12:15 UTC (permalink / raw)
To: xenomai; +Cc: Jan Kiszka, Florian Bezdeka
Updating to latest Isar will allow us to use Debian bookworm as base
distribution. Bookworm ships a recent glibc which will help to enable
y2038 testing in the CI environment.
This is the first version of Isar with sbuild enabled, so we can't use
the tricks around ${BUILDCHROOT_DIR} anymore.
xenomai: The scripts/bootstrap call is already part of the upstream
debian/rules file, so we do not have to call it again.
linux-xenomai: Moving the rules file provided by linux-custom.inc to
rules.isar allows us to ship our own rules file and override the
necessary steps.
Signed-off-by: Florian Bezdeka <florian.bezdeka@siemens.com>
---
kas.yml | 4 +--
recipes-kernel/linux/files/rules.tmpl | 11 ++++++++
recipes-kernel/linux/linux-xenomai.inc | 35 +++++++++-----------------
recipes-xenomai/xenomai/xenomai.inc | 8 ++----
4 files changed, 27 insertions(+), 31 deletions(-)
create mode 100755 recipes-kernel/linux/files/rules.tmpl
diff --git a/kas.yml b/kas.yml
index f8790e5..5f41f18 100644
--- a/kas.yml
+++ b/kas.yml
@@ -1,7 +1,7 @@
#
# Xenomai Real-Time System
#
-# Copyright (c) Siemens AG, 2018-2020
+# Copyright (c) Siemens AG, 2018-2023
#
# Authors:
# Jan Kiszka <jan.kiszka@siemens.com>
@@ -22,7 +22,7 @@ repos:
isar:
url: https://github.com/ilbers/isar.git
- refspec: 213b8f62fa74e87321f927fb6b4ed9db93e5cb37
+ refspec: 8530a94bdc8919fadccad13e6061832d2f2c1fcc
layers:
meta:
diff --git a/recipes-kernel/linux/files/rules.tmpl b/recipes-kernel/linux/files/rules.tmpl
new file mode 100755
index 0000000..5f1b325
--- /dev/null
+++ b/recipes-kernel/linux/files/rules.tmpl
@@ -0,0 +1,11 @@
+#!/usr/bin/make -f
+
+include debian/rules.isar
+
+prepare_kernel:
+ /usr/src/xenomai-kernel-source/scripts/prepare-kernel.sh \
+ --linux=$(S) \
+ --arch=${KERNEL_ARCH}
+
+override_dh_auto_configure: prepare_kernel
+
diff --git a/recipes-kernel/linux/linux-xenomai.inc b/recipes-kernel/linux/linux-xenomai.inc
index 7dba96e..bed58cc 100644
--- a/recipes-kernel/linux/linux-xenomai.inc
+++ b/recipes-kernel/linux/linux-xenomai.inc
@@ -1,7 +1,7 @@
#
# Xenomai Real-Time System
#
-# Copyright (c) Siemens AG, 2018-2021
+# Copyright (c) Siemens AG, 2018-2023
#
# Authors:
# Jan Kiszka <jan.kiszka@siemens.com>
@@ -19,10 +19,13 @@ XENOMAI_DEBUG ?= "0"
SRC_URI += "${@'file://${KERNEL_DEFCONFIG}' if d.getVar('KERNEL_DEFCONFIG') == d.getVar('XENOMAI_DEFCONFIG') else ''}"
SRC_URI += "${@'file://common_nodbg.cfg' if d.getVar('XENOMAI_DEBUG') == '0' else ''}"
+SRC_URI += "file://rules.tmpl"
DEPENDS += "xenomai-kernel-source"
KBUILD_DEPENDS += "xenomai-kernel-source:native"
+TEMPLATE_FILES += "rules.tmpl"
+
def get_commit(d):
try:
return bb.fetch2.get_srcrev(d).strip('AUTOINC+')
@@ -32,26 +35,12 @@ def get_commit(d):
LINUX_COMMIT ?= "${@get_commit(d)}"
dpkg_runbuild_prepend() {
- case ${DISTRO_ARCH} in
- armhf)
- ARCH=arm
- ;;
- arm64)
- ARCH=arm64
- ;;
- amd64|i386)
- ARCH=x86
- ;;
- *)
- bberror "Unsupported architecture ${DISTRO_ARCH}"
- exit 1
- esac
- bbplain $(printf "linux-xenomai-%s: Building revision %.20s\n" \
- ${PV} ${LINUX_COMMIT})
-
- ${BUILDCHROOT_DIR}/usr/src/xenomai-kernel-source/scripts/prepare-kernel.sh \
- --linux=${BUILDCHROOT_DIR}/${PP}/${PPS} --arch=$ARCH \
- --outpatch=${WORKDIR}/xenomai-kernel.patch
- patch -d ${BUILDCHROOT_DIR}/${PP}/${PPS} \
- -p1 -i ${WORKDIR}/xenomai-kernel.patch
+ bbplain $(printf "linux-xenomai-%s: Building revision %.20s\n" \
+ ${PV} ${LINUX_COMMIT})
+}
+
+do_prepare_debian_rules() {
+ mv ${WORKDIR}/debian/rules ${WORKDIR}/debian/rules.isar
+ mv ${WORKDIR}/rules ${WORKDIR}/debian/rules
}
+addtask prepare_debian_rules after do_transform_template before do_dpkg_build
\ No newline at end of file
diff --git a/recipes-xenomai/xenomai/xenomai.inc b/recipes-xenomai/xenomai/xenomai.inc
index b874a4a..8ebba7c 100644
--- a/recipes-xenomai/xenomai/xenomai.inc
+++ b/recipes-xenomai/xenomai/xenomai.inc
@@ -1,7 +1,7 @@
#
# Xenomai Real-Time System
#
-# Copyright (c) Siemens AG, 2018
+# Copyright (c) Siemens AG, 2018-2023
#
# Authors:
# Jan Kiszka <jan.kiszka@siemens.com>
@@ -32,12 +32,8 @@ do_prepare_build() {
# Remove upstream's "3.0 (native)" declaration so that we can define the
# package version more freely.
rm -f ${S}/debian/source/format
-}
-dpkg_runbuild_prepend() {
bbplain $(printf "xenomai-%s: Building revision %.20s\n" \
${PV} ${COMMIT})
-
- sudo chroot --userspec=$( id -u ):$( id -g ) ${BUILDCHROOT_DIR} \
- sh -c "cd ${PP}/${PPS}; scripts/bootstrap"
}
+
--
2.39.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [xenomai-images][PATCH 2/2] Update Isar to latest next version - sbuild integration
2023-01-23 12:15 ` [xenomai-images][PATCH 2/2] Update Isar to latest next version - sbuild integration Florian Bezdeka
@ 2023-02-01 10:18 ` Jan Kiszka
0 siblings, 0 replies; 4+ messages in thread
From: Jan Kiszka @ 2023-02-01 10:18 UTC (permalink / raw)
To: Florian Bezdeka, xenomai
On 23.01.23 13:15, Florian Bezdeka wrote:
> Updating to latest Isar will allow us to use Debian bookworm as base
> distribution. Bookworm ships a recent glibc which will help to enable
> y2038 testing in the CI environment.
>
> This is the first version of Isar with sbuild enabled, so we can't use
> the tricks around ${BUILDCHROOT_DIR} anymore.
>
> xenomai: The scripts/bootstrap call is already part of the upstream
> debian/rules file, so we do not have to call it again.
>
> linux-xenomai: Moving the rules file provided by linux-custom.inc to
> rules.isar allows us to ship our own rules file and override the
> necessary steps.
>
> Signed-off-by: Florian Bezdeka <florian.bezdeka@siemens.com>
> ---
> kas.yml | 4 +--
> recipes-kernel/linux/files/rules.tmpl | 11 ++++++++
> recipes-kernel/linux/linux-xenomai.inc | 35 +++++++++-----------------
> recipes-xenomai/xenomai/xenomai.inc | 8 ++----
> 4 files changed, 27 insertions(+), 31 deletions(-)
> create mode 100755 recipes-kernel/linux/files/rules.tmpl
>
> diff --git a/kas.yml b/kas.yml
> index f8790e5..5f41f18 100644
> --- a/kas.yml
> +++ b/kas.yml
> @@ -1,7 +1,7 @@
> #
> # Xenomai Real-Time System
> #
> -# Copyright (c) Siemens AG, 2018-2020
> +# Copyright (c) Siemens AG, 2018-2023
> #
> # Authors:
> # Jan Kiszka <jan.kiszka@siemens.com>
> @@ -22,7 +22,7 @@ repos:
>
> isar:
> url: https://github.com/ilbers/isar.git
> - refspec: 213b8f62fa74e87321f927fb6b4ed9db93e5cb37
> + refspec: 8530a94bdc8919fadccad13e6061832d2f2c1fcc
> layers:
> meta:
>
> diff --git a/recipes-kernel/linux/files/rules.tmpl b/recipes-kernel/linux/files/rules.tmpl
> new file mode 100755
> index 0000000..5f1b325
> --- /dev/null
> +++ b/recipes-kernel/linux/files/rules.tmpl
> @@ -0,0 +1,11 @@
> +#!/usr/bin/make -f
> +
> +include debian/rules.isar
> +
> +prepare_kernel:
> + /usr/src/xenomai-kernel-source/scripts/prepare-kernel.sh \
> + --linux=$(S) \
> + --arch=${KERNEL_ARCH}
> +
> +override_dh_auto_configure: prepare_kernel
> +
> diff --git a/recipes-kernel/linux/linux-xenomai.inc b/recipes-kernel/linux/linux-xenomai.inc
> index 7dba96e..bed58cc 100644
> --- a/recipes-kernel/linux/linux-xenomai.inc
> +++ b/recipes-kernel/linux/linux-xenomai.inc
> @@ -1,7 +1,7 @@
> #
> # Xenomai Real-Time System
> #
> -# Copyright (c) Siemens AG, 2018-2021
> +# Copyright (c) Siemens AG, 2018-2023
> #
> # Authors:
> # Jan Kiszka <jan.kiszka@siemens.com>
> @@ -19,10 +19,13 @@ XENOMAI_DEBUG ?= "0"
>
> SRC_URI += "${@'file://${KERNEL_DEFCONFIG}' if d.getVar('KERNEL_DEFCONFIG') == d.getVar('XENOMAI_DEFCONFIG') else ''}"
> SRC_URI += "${@'file://common_nodbg.cfg' if d.getVar('XENOMAI_DEBUG') == '0' else ''}"
> +SRC_URI += "file://rules.tmpl"
>
> DEPENDS += "xenomai-kernel-source"
> KBUILD_DEPENDS += "xenomai-kernel-source:native"
>
> +TEMPLATE_FILES += "rules.tmpl"
> +
> def get_commit(d):
> try:
> return bb.fetch2.get_srcrev(d).strip('AUTOINC+')
> @@ -32,26 +35,12 @@ def get_commit(d):
> LINUX_COMMIT ?= "${@get_commit(d)}"
>
> dpkg_runbuild_prepend() {
> - case ${DISTRO_ARCH} in
> - armhf)
> - ARCH=arm
> - ;;
> - arm64)
> - ARCH=arm64
> - ;;
> - amd64|i386)
> - ARCH=x86
> - ;;
> - *)
> - bberror "Unsupported architecture ${DISTRO_ARCH}"
> - exit 1
> - esac
> - bbplain $(printf "linux-xenomai-%s: Building revision %.20s\n" \
> - ${PV} ${LINUX_COMMIT})
> -
> - ${BUILDCHROOT_DIR}/usr/src/xenomai-kernel-source/scripts/prepare-kernel.sh \
> - --linux=${BUILDCHROOT_DIR}/${PP}/${PPS} --arch=$ARCH \
> - --outpatch=${WORKDIR}/xenomai-kernel.patch
> - patch -d ${BUILDCHROOT_DIR}/${PP}/${PPS} \
> - -p1 -i ${WORKDIR}/xenomai-kernel.patch
> + bbplain $(printf "linux-xenomai-%s: Building revision %.20s\n" \
> + ${PV} ${LINUX_COMMIT})
> +}
> +
> +do_prepare_debian_rules() {
> + mv ${WORKDIR}/debian/rules ${WORKDIR}/debian/rules.isar
> + mv ${WORKDIR}/rules ${WORKDIR}/debian/rules
> }
> +addtask prepare_debian_rules after do_transform_template before do_dpkg_build
> \ No newline at end of file
> diff --git a/recipes-xenomai/xenomai/xenomai.inc b/recipes-xenomai/xenomai/xenomai.inc
> index b874a4a..8ebba7c 100644
> --- a/recipes-xenomai/xenomai/xenomai.inc
> +++ b/recipes-xenomai/xenomai/xenomai.inc
> @@ -1,7 +1,7 @@
> #
> # Xenomai Real-Time System
> #
> -# Copyright (c) Siemens AG, 2018
> +# Copyright (c) Siemens AG, 2018-2023
> #
> # Authors:
> # Jan Kiszka <jan.kiszka@siemens.com>
> @@ -32,12 +32,8 @@ do_prepare_build() {
> # Remove upstream's "3.0 (native)" declaration so that we can define the
> # package version more freely.
> rm -f ${S}/debian/source/format
> -}
>
> -dpkg_runbuild_prepend() {
> bbplain $(printf "xenomai-%s: Building revision %.20s\n" \
> ${PV} ${COMMIT})
> -
> - sudo chroot --userspec=$( id -u ):$( id -g ) ${BUILDCHROOT_DIR} \
> - sh -c "cd ${PP}/${PPS}; scripts/bootstrap"
> }
> +
Thanks, applied, with some whitespace fixes and a bit further Isar bump
to get a few recent optimization (not the broken ones).
Jan
--
Siemens AG, Technology
Competence Center Embedded Linux
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-02-01 10:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-23 12:15 [xenomai-images][PATCH 0/2] Update to latest Isar Florian Bezdeka
2023-01-23 12:15 ` [xenomai-images][PATCH 1/2] Mount rootfs for qemu based tests read-write Florian Bezdeka
2023-01-23 12:15 ` [xenomai-images][PATCH 2/2] Update Isar to latest next version - sbuild integration Florian Bezdeka
2023-02-01 10:18 ` Jan Kiszka
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).