From d945c7a9ededce73a5164089d84cea27a7db43c3 Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Mon, 21 Sep 2020 17:31:55 -0700 Subject: runx: robustness changes Adding one build and one runtime robustness change: - build: specify the syroot native as a library path to qemu user. This allows us to run dynamic executables - runtime: add a patch to increase the serial fd timeout. We'll drop this once it is merged upstream. Signed-off-by: Bruce Ashfield Signed-off-by: Bruce Ashfield --- .../0001-runX-add-bounded-looping-timeout.patch | 35 ++++++++++++++++++++++ recipes-core/runx/runx_git.bb | 6 ++-- 2 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 recipes-core/runx/runx/0001-runX-add-bounded-looping-timeout.patch (limited to 'recipes-core') diff --git a/recipes-core/runx/runx/0001-runX-add-bounded-looping-timeout.patch b/recipes-core/runx/runx/0001-runX-add-bounded-looping-timeout.patch new file mode 100644 index 00000000..b4c6efaf --- /dev/null +++ b/recipes-core/runx/runx/0001-runX-add-bounded-looping-timeout.patch @@ -0,0 +1,35 @@ +From 1cf4ff2137252c63687f54e09626850cfab6e9f9 Mon Sep 17 00:00:00 2001 +From: Rob Woolley +Date: Thu, 17 Sep 2020 19:41:06 -0700 +Subject: [PATCH] runX: add bounded / looping timeout + +On slower machines, we may need a longer timeout before giving +up. + +Signed-off-by: Rob Woolley +--- + git/runX | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/runX b/runX +index 492cb4c..70c95e1 100755 +--- a/runX ++++ b/runX +@@ -119,7 +119,13 @@ then + daemonize $workpath/serial_start \ + "$containerid" \ + "$crundir"/console_pty +- sleep .1 ++ for n in 5 4 3 2 1; do ++ if [ ! -l "$crundir"/console_pty ]; then ++ break; ++ else ++ sleep .1; ++ fi; ++ done + daemonize $workpath/serial_fd_handler \ + "$guestconsole" \ + "$crundir"/console_pty +-- +2.17.1 + diff --git a/recipes-core/runx/runx_git.bb b/recipes-core/runx/runx_git.bb index bf84b2df..53c24641 100644 --- a/recipes-core/runx/runx_git.bb +++ b/recipes-core/runx/runx_git.bb @@ -12,6 +12,7 @@ SRC_URI = "\ https://www.kernel.org/pub/linux/kernel/${KERNEL_URL_VER}/${KERNEL_SRC_VER}.tar.xz;destsuffix=git/kernel/build \ file://0001-make-kernel-cross-compilation-tweaks.patch \ file://0001-make-initrd-cross-install-tweaks.patch \ + file://0001-runX-add-bounded-looping-timeout.patch \ " SRC_URI[md5sum] = "ce9b2d974d27408a61c53a30d3f98fb9" SRC_URI[sha256sum] = "bf338980b1670bca287f9994b7441c2361907635879169c64ae78364efc5f491" @@ -31,7 +32,7 @@ inherit kernel-arch # we have a busybox bbappend that makes /bin available to the # sysroot, and hence gets us the target binary that we need -DEPENDS = "busybox go-build" +DEPENDS = "busybox-initrd go-build" # for the kernel build phase DEPENDS += "openssl-native coreutils-native util-linux-native xz-native bc-native" @@ -77,9 +78,8 @@ do_compile() { # construct the initrd echo "[INFO]: runx: constructing the initrd" - cp ${STAGING_DIR_HOST}/bin/busybox.nosuid ${WORKDIR}/busybox - export QEMU_USER=`which qemu-${HOST_ARCH}` + export QEMU_USER="`which qemu-${HOST_ARCH}` -L ${STAGING_BASELIBDIR}/.." export BUSYBOX="${WORKDIR}/busybox" export CROSS_COMPILE="t" ${S}/initrd/make-initrd -- cgit v1.2.3-54-g00ecf