Stefan Hajnoczi <stefa...@gmail.com> writes:

> On Mon, Mar 31, 2025 at 6:39 AM Alex Bennée <alex.ben...@linaro.org> wrote:
>> The unikernel utilizes rcore-os's no_std VirtIO drivers to discover and
>> initialize a range of VirtIO devices.
>
> https://github.com/rcore-os/virtio-drivers
>
> I noticed that VIRTIO_F_VERSION_1, VIRTIO_F_RING_PACKED, and hardware
> device support are missing according to the readme. Those are
> important features for real-world test coverage.

At the moment most of the testing is around feature negotiation so we
don't get to the point that we are need packed virtqs. However it would
be useful to upstream such support for their use generally - I know
there are some downstream projects that have stuff to upstream in due
course.

The original idea for the feature bit tests was to utilise the kernels
kunit framework. However that was outside the scope of what kunit which
is really focused on testing kernel internals rather than the HW
interface.

We did consider expanding the kvm-unit-test uni-kernels but that would
either involve importing kernel bits or a fairly big C re-implementation
of it. At least by expanding the rcore-os drivers we will have two
different driver stacks in two different languages.

> Or is the idea to use the unikernel for low-level device
> initialization and the Linux image for tests that do I/O?

So far the rootfs images get by far the largest coverage because they
can more easily trigger a whole range of conditions. While VirtIO is
intended to be OS and hypervisor agnostic Linux remains the system with
the widest and most functional coverage of the interfaces.

>
> Stefan

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro

Reply via email to