From cc5f91dac7ca4f6407fe2c7cebc97b9fda8b392e Mon Sep 17 00:00:00 2001 From: Ryan Savino Date: Wed, 24 Aug 2022 15:15:41 -0500 Subject: [PATCH 1/2] osbuilder: add systemd symlinks for kata-agent AGENT_INIT=no (systemd) add symlinks for kata-agent service. Fixes: #4932 Signed-Off-By: Ryan Savino --- tools/osbuilder/rootfs-builder/rootfs.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tools/osbuilder/rootfs-builder/rootfs.sh b/tools/osbuilder/rootfs-builder/rootfs.sh index 8403a2dc565c..400a9f2bad76 100755 --- a/tools/osbuilder/rootfs-builder/rootfs.sh +++ b/tools/osbuilder/rootfs-builder/rootfs.sh @@ -597,7 +597,13 @@ EOF [ -x "${AGENT_DEST}" ] || die "${AGENT_DEST} is not installed in ${ROOTFS_DIR}" OK "Agent installed" - [ "${AGENT_INIT}" == "yes" ] && setup_agent_init "${AGENT_DEST}" "${init}" + if [ "${AGENT_INIT}" == "yes" ]; then + setup_agent_init "${AGENT_DEST}" "${init}" + else + # Setup systemd service for kata-agent + mkdir -p "${ROOTFS_DIR}/etc/systemd/system/basic.target.wants" + ln -sf "/usr/lib/systemd/system/kata-containers.target" "${ROOTFS_DIR}/etc/systemd/system/basic.target.wants/kata-containers.target" + fi info "Check init is installed" [ -x "${init}" ] || [ -L "${init}" ] || die "/sbin/init is not installed in ${ROOTFS_DIR}" From dc32c4622fb79feee2616938fbfbf211d6026a88 Mon Sep 17 00:00:00 2001 From: Ryan Savino Date: Wed, 24 Aug 2022 15:24:57 -0500 Subject: [PATCH 2/2] osbuilder: fix ubuntu initrd /dev/ttyS0 hang Guest log is showing a hang on systemd getty start. Adding symlink for /dev/ttyS0 resolves issue. Fixes: #4932 Signed-Off-By: Ryan Savino --- tools/osbuilder/rootfs-builder/rootfs.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/osbuilder/rootfs-builder/rootfs.sh b/tools/osbuilder/rootfs-builder/rootfs.sh index 400a9f2bad76..037da85cbc92 100755 --- a/tools/osbuilder/rootfs-builder/rootfs.sh +++ b/tools/osbuilder/rootfs-builder/rootfs.sh @@ -520,6 +520,11 @@ EOF chrony_conf_file="${ROOTFS_DIR}/etc/chrony/chrony.conf" chrony_systemd_service="${ROOTFS_DIR}/lib/systemd/system/chrony.service" ;; + "ubuntu") + # Fix for #4932 - Boot hang at: "A start job is running for /dev/ttyS0" + mkdir -p "${ROOTFS_DIR}/etc/systemd/system/getty.target.wants" + ln -sf "/lib/systemd/system/getty@.service" "${ROOTFS_DIR}/etc/systemd/system/getty.target.wants/getty@ttyS0.service" + ;; *) chrony_conf_file="${ROOTFS_DIR}/etc/chrony.conf" chrony_systemd_service="${ROOTFS_DIR}/usr/lib/systemd/system/chronyd.service"