Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Feb 2026 07:57:02 +0100
From:      Mario Marietto <marietto2008@gmail.com>
To:        Emil Tsalapatis <emil@etsalapatis.com>,  FreeBSD virtualization <freebsd-virtualization@freebsd.org>
Subject:   Re: RFC: Kernel virtiofs driver
Message-ID:  <CA%2B1FSijd9Cgr7KAL_pD0ACCr7%2BGTMoXR9zQ=skNVFdkstP6KJA@mail.gmail.com>
In-Reply-To: <CABFh=a5HoDOHthe%2BavAAxpb3YN4W3FAGqCysdbyrBbr4Rw7rMg@mail.gmail.com>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Hello Emil,

Inside a FreeBSD guest OS (15.0-RELEASE) I do :

kldload virtio_p9fs

kldload p9fs_load

mount -t p9fs sharename /mnt/host

This works for me,I can share files between FreeBSD 15.0 guest and FreeBSD
14.3 host os. So,what's missing in this case and which features you added ?

Thanks.


On Tue, Feb 10, 2026 at 4:05 AM Emil Tsalapatis <emil@etsalapatis.com>
wrote:

> Hi everyone,
>
>     I recently finished the virtiofs driver and it is now ready for
> review. The device allows for sharing directories between a FreeBSD guest
> and a host.
>
> The driver really is two components:
>
> 1) The virtio device that sends FUSE tickets to and from the host: D46295
> <https://reviews.freebsd.org/D46295>;
> 2) The file system that gets mounted in the guest: D46296
> <https://reviews.freebsd.org/D46296>.
>
> To test it you need a couple additional fixes/workarounds for FUSE-related
> issues. You can grab a working tree here
> <https://github.com/etsal/freebsd-src/tree/virtiofs>; or apply diffs D55047
> <https://reviews.freebsd.org/D55047>; and D55046
> <https://reviews.freebsd.org/D55046>. D55046 is a workaround, but still
> prevents an assertion failure related to FUSE caching until the underlying
> issue is properly fixed on HEAD.
>
> To use it, make sure you are creating virtiofs device on the host then
> from the FreeBSD guest run
>
> mount -t virtiofs <tag> <mountpoint>
>
> where <tag> is the name tag you gave to the virtiofs device in the host
> VMM.
>
> Reviews and testing welcome!
>
> Thanks,
> Emil
>
>
>

-- 
Mario.

[-- Attachment #2 --]
<div dir="ltr"><div class="gmail-group gmail-relative gmail-inline-flex gmail-gap-2 gmail-bg-bg-300 gmail-rounded-xl gmail-pl-2.5 gmail-py-2.5 gmail-break-words gmail-text-text-100 gmail-transition-all gmail-max-w-[75ch] gmail-flex-col gmail-!px-4 gmail-max-w-[85%]" style="opacity:1"><div class="gmail-flex gmail-flex-row gmail-gap-2 gmail-relative"><div class="gmail-flex-1"><div class="gmail-font-large gmail-!font-user-message gmail-grid gmail-grid-cols-1 gmail-gap-2 gmail-py-0.5 gmail-relative" style="max-height:none;overflow:hidden"><p class="gmail-whitespace-pre-wrap gmail-break-words"><font size="4"><code class="gmail-bg-text-200/5 gmail-border gmail-border-0.5 gmail-border-border-300 gmail-text-danger-000 gmail-whitespace-pre-wrap gmail-rounded-[0.4rem] gmail-px-1 gmail-py-px gmail-text-[0.9rem]">Hello Emil,</code></font></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><font size="4"><code class="gmail-bg-text-200/5 gmail-border gmail-border-0.5 gmail-border-border-300 gmail-text-danger-000 gmail-whitespace-pre-wrap gmail-rounded-[0.4rem] gmail-px-1 gmail-py-px gmail-text-[0.9rem]">Inside a FreeBSD guest OS (15.0-RELEASE) I do :</code></font></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><span><span class="gmail-token gmail-token gmail-assign-left" style="color:rgb(251,173,96)">kldload virtio_p9fs </span></span></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><span><span class="gmail-token gmail-token gmail-assign-left" style="color:rgb(251,173,96)">kldload </span></span><span><span></span><span class="gmail-token gmail-token gmail-assign-left" style="color:rgb(251,173,96)">p9fs_load</span></span></p><p class="gmail-whitespace-pre-wrap gmail-break-words"></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><font size="4"><code class="gmail-bg-text-200/5 gmail-border gmail-border-0.5 gmail-border-border-300 gmail-text-danger-000 gmail-whitespace-pre-wrap gmail-rounded-[0.4rem] gmail-px-1 gmail-py-px gmail-text-[0.9rem]">mount -t p9fs sharename /mnt/host</code></font></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><font size="4"><code class="gmail-bg-text-200/5 gmail-border gmail-border-0.5 gmail-border-border-300 gmail-text-danger-000 gmail-whitespace-pre-wrap gmail-rounded-[0.4rem] gmail-px-1 gmail-py-px gmail-text-[0.9rem]"></code></font></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><font size="4"><code class="gmail-bg-text-200/5 gmail-border gmail-border-0.5 gmail-border-border-300 gmail-text-danger-000 gmail-whitespace-pre-wrap gmail-rounded-[0.4rem] gmail-px-1 gmail-py-px gmail-text-[0.9rem]">This works for me,I can share files between FreeBSD 15.0 guest and FreeBSD 14.3 host os. So,what&#39;s missing in this case and which features you added ?</code></font></p><p class="gmail-whitespace-pre-wrap gmail-break-words"><font size="4"><code class="gmail-bg-text-200/5 gmail-border gmail-border-0.5 gmail-border-border-300 gmail-text-danger-000 gmail-whitespace-pre-wrap gmail-rounded-[0.4rem] gmail-px-1 gmail-py-px gmail-text-[0.9rem]">Thanks.</code></font></p></div></div></div></div><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, Feb 10, 2026 at 4:05 AM Emil Tsalapatis &lt;<a href="mailto:emil@etsalapatis.com">emil@etsalapatis.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div>Hi everyone,<br><br>    I recently finished the virtiofs driver and it is now ready for review. The device allows for sharing directories between a FreeBSD guest and a host.</div><br><div>The driver really is two components:<br><br><div>1) The virtio device that sends FUSE tickets to and from the host: <a href="https://reviews.freebsd.org/D46295" target="_blank">D46295</a></div><div>2) The file system that gets mounted in the guest: <a href="https://reviews.freebsd.org/D46296" target="_blank">D46296</a>.</div></div><div><br></div><div><div>To test it you need a couple additional fixes/workarounds for FUSE-related issues. You can grab a working tree <a href="https://github.com/etsal/freebsd-src/tree/virtiofs" target="_blank">here</a> or apply diffs <a href="https://reviews.freebsd.org/D55047" target="_blank"><span>D55047</span></a><span> and </span><a href="https://reviews.freebsd.org/D55046" target="_blank">D55046</a>. D55046 is a workaround, but 
still prevents an assertion failure related to FUSE caching until the underlying issue is properly fixed on HEAD. </div><div><br></div><div>To use it, make sure you are creating virtiofs device on the host then from the FreeBSD guest run</div><div><br></div><div>mount -t virtiofs &lt;tag&gt; &lt;mountpoint&gt;</div><div><br></div><div>where &lt;tag&gt; is the name tag you gave to the virtiofs device in the host VMM.</div><div><br></div><div>Reviews and testing welcome!</div><div><br></div><div>Thanks,</div><div>Emil</div><div><br></div><br></div></div>
</div>
</blockquote></div><div><br clear="all"></div><br><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature">Mario.<br></div>
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B1FSijd9Cgr7KAL_pD0ACCr7%2BGTMoXR9zQ=skNVFdkstP6KJA>