Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 May 2024 16:12:38 -0400
From:      Emil Tsalapatis <emil@etsalapatis.com>
To:        freebsd-virtualization@freebsd.org
Subject:   [RFC] virtio testing framework
Message-ID:  <CABFh=a7-v_c_x6pGW86z1AX95FmcCWEuWciNxPmAOWs31V=s5Q@mail.gmail.com>

index | next in thread | raw e-mail

[-- Attachment #1 --]
Hi everyone,

    while developing a virtiofs kernel driver I have written a debug virtio
transport to test virtio drivers inside a VM without requiring nested
virtualization or support from the host. The transport allows paravirt
devices to be emulated in local userspace instead of a host, so we can
create paravirt devices and test them as necessary. For virtiofs in
particular, it allows us to reuse the existing FUSE tests since we can now
run both the virtiofs driver and the FUSE server (which is normally in the
host) in a single machine.

I have uploaded the WIP code [here <https://reviews.freebsd.org/D45370>],
and an overview of the design [here
<https://gist.github.com/etsal/4280b6f16c1815d64ffda7ecce0b66f5>]. The
patch has a ways to go, and currently only supports virtio-blk device
emulation as a PoC, but feedback is welcome and appreciated. Please also
let me know if there is interest in using this for testing other virtio
devices apart from virtiofs.

--Emil

[-- Attachment #2 --]
<div dir="ltr">Hi everyone,<br><br>    while developing a virtiofs kernel driver I have written a debug virtio transport to test virtio drivers inside a VM without requiring nested virtualization or support from 
the host. The transport allows paravirt devices to be emulated in local 
userspace instead of a host, so we can create paravirt devices and test 
them as necessary. For virtiofs in particular, it allows us to reuse the
 existing FUSE tests since we can now run both the virtiofs driver and 
the FUSE server (which is normally in the host) in a single machine.<br><div><br></div><div>I have uploaded the WIP code [<a href="https://reviews.freebsd.org/D45370" target="_blank">here</a>], and an overview of the design [<a href="https://gist.github.com/etsal/4280b6f16c1815d64ffda7ecce0b66f5" target="_blank">here</a>].
 The patch has a ways to go, and currently only supports virtio-blk 
device emulation as a PoC, but feedback is welcome and appreciated. 
Please also let me know if there is interest in using this for testing 
other virtio devices apart from virtiofs.</div><font color="#888888"><br>--Emil</font></div>
help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CABFh=a7-v_c_x6pGW86z1AX95FmcCWEuWciNxPmAOWs31V=s5Q>