[PATCH 1/4] tools: docker: Install a readable kernel for libguestfs-tools

Heinrich Schuchardt xypron.glpk at gmx.de
Sat Jun 5 02:21:52 CEST 2021


On 6/4/21 9:02 PM, Alper Nebi Yasak wrote:
> The filesystem and EFI (capsule and secure boot) test setups try to use
> guestmount and virt-make-fs respectively to prepare disk images to run
> tests on. However, these libguestfs tools need a kernel image and fail
> with the following message (revealed in debug/trace mode) if it can't
> find one:
>
>      supermin: failed to find a suitable kernel (host_cpu=x86_64).
>
>      I looked for kernels in /boot and modules in /lib/modules.
>
>      If this is a Xen guest, and you only have Xen domU kernels
>      installed, try installing a fullvirt kernel (only for
>      supermin use, you shouldn't boot the Xen guest with it).
>
> This failure then causes these tests to be skipped in CIs. Install a
> kernel package in the Docker containers so the CIs can run these
> tests with libguestfs tools again (assuming the container is run with
> necessary host devices and privileges). As this kernel would be only
> used for virtualization, we can use the kernel package specialized for
> that. On Ubuntu systems kernel images are not readable by non-root
> users, so explicitly add read permissions with chmod as well.
>
> Signed-off-by: Alper Nebi Yasak <alpernebiyasak at gmail.com>

Acked-by: Heinrich Schuchardt <xypron.glpk at gmx.de>

> ---
>
>   tools/docker/Dockerfile | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile
> index d2f0074ee8a6..563b16639e54 100644
> --- a/tools/docker/Dockerfile
> +++ b/tools/docker/Dockerfile
> @@ -71,6 +71,7 @@ RUN apt-get update && apt-get install -y \
>   	libssl-dev \
>   	libudev-dev \
>   	libusb-1.0-0-dev \
> +	linux-image-kvm \
>   	lzma-alone \
>   	lzop \
>   	mount \
> @@ -99,6 +100,9 @@ RUN apt-get update && apt-get install -y \
>   	zip \
>   	&& rm -rf /var/lib/apt/lists/*
>
> +# Make kernels readable for libguestfs tools to work correctly
> +RUN chmod +r /boot/vmlinu* /lib/modules/*/vmlinu* || true
> +
>   # Manually install libmpfr4 for the toolchains
>   RUN wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd64.deb && dpkg -i libmpfr4_3.1.4-1_amd64.deb && rm libmpfr4_3.1.4-1_amd64.deb
>
>



More information about the U-Boot mailing list