From d455883b46f464599ba68e49a26d0c7e4986c718 Mon Sep 17 00:00:00 2001 From: Zhiwei Huang Date: Fri, 2 Aug 2024 09:54:01 +0800 Subject: [PATCH] tools: Support for building qemu with linux aio The kata containers hypervisior qemu configuration supports setting block_device_aio="native", but the kata static build of qemu does not add the linux aio feature. The libaio-dev library is a necessary dependency for building qemu with linux aio. Fixes: #10130 Signed-off-by: Zhiwei Huang --- tools/packaging/scripts/configure-hypervisor.sh | 8 +++----- tools/packaging/static-build/qemu/Dockerfile | 1 + 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/tools/packaging/scripts/configure-hypervisor.sh b/tools/packaging/scripts/configure-hypervisor.sh index d47d3ace1c..f88536dec5 100755 --- a/tools/packaging/scripts/configure-hypervisor.sh +++ b/tools/packaging/scripts/configure-hypervisor.sh @@ -356,11 +356,6 @@ generate_qemu_options() { # Disable XEN driver qemu_options+=(size:--disable-xen) - # FIXME: why is this disabled? - # (for reference, it's explicitly enabled in Ubuntu 17.10 and - # implicitly enabled in Fedora 27). - qemu_options+=(size:--disable-linux-aio) - # Disable Capstone qemu_options+=(size:--disable-capstone) @@ -412,6 +407,9 @@ generate_qemu_options() { # Required for fast network access qemu_options+=(speed:--enable-vhost-net) + # Support Linux AIO (native) + qemu_options+=(size:--enable-linux-aio) + # Support Ceph RADOS Block Device (RBD) [ -z "${static}" ] && qemu_options+=(functionality:--enable-rbd) diff --git a/tools/packaging/static-build/qemu/Dockerfile b/tools/packaging/static-build/qemu/Dockerfile index 0139392329..07a9366dbc 100644 --- a/tools/packaging/static-build/qemu/Dockerfile +++ b/tools/packaging/static-build/qemu/Dockerfile @@ -37,6 +37,7 @@ RUN apt-get update && apt-get upgrade -y && \ dpkg-dev \ flex \ gawk \ + libaio-dev${DPKG_ARCH} \ libaudit-dev${DPKG_ARCH} \ libblkid-dev${DPKG_ARCH} \ libcap-dev${DPKG_ARCH} \