From nobody Thu Feb 12 17:14:40 2026 X-Original-To: freebsd-virtualization@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fBhkw0Y02z6S0bS for ; Thu, 12 Feb 2026 17:15:20 +0000 (UTC) (envelope-from marietto2008@gmail.com) Received: from mail-pj1-x1030.google.com (mail-pj1-x1030.google.com [IPv6:2607:f8b0:4864:20::1030]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fBhkv5P33z3K7M for ; Thu, 12 Feb 2026 17:15:19 +0000 (UTC) (envelope-from marietto2008@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x1030.google.com with SMTP id 98e67ed59e1d1-354c67da885so81388a91.3 for ; Thu, 12 Feb 2026 09:15:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770916517; cv=none; d=google.com; s=arc-20240605; b=TeBypSq5W+ROBPiF9WKnqk0YvPyR2r9aNYnXHFybl0Z27bjP6WRR+xtSR0pIHIXsPK v2v3feeHpG/os9hjwZISKghxNRnoiTUwK5yizuh+MLy7eqAe9OI6ssHeIbME8y2sXQsj ooF2hUD01FRSoXbP75Gypgv1SThQuyitsNeFCi657zFQIjRSEnarN9jFO3hqtfT//OI5 plkI7063JTAc8kRdtTX8e3HbiHgwjCLuczWFN5KLtL8eNZagfBYMferVdBWgRANvmOGH W5bCThVHN9K9hPLwlaHpFfa5/wp6M/zSk9jz+4CjsqNhFU2zVxQ9rH6ALa3N8fgMQiUE 8Lmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=7jNEDF9lfbf/+1MKaQ4LlRPcifR7j2hL6eQOZ45CgTQ=; fh=C9h2cwcxr9DjYjil7jyKUtDYyorW9ozUskHnlGDz+9I=; b=OEU9wXdWus9RblImHsecmuz/H7uEU8thSk5wcRA+87GMj6rCluGX4UlzoTfkkM9/j+ 6t0db44FF46hHGBfeLeYWZdbsXe4KRXp7Rpa9Sm1PYy26bIl50EAM7cEesymr9WOPQyg aUmTJYiCCK/viB69Au1gvLaEbyRoWJaD60RtKTc3IBXEjzY4rZpMR5DYlQlECWTbf4Ar HAwlrDo7MLT/1J4U2Ninu0M6sti2biBrL4dWIhI0SlHAp1lIMFAIWKNQ3sx267cDBTfX PT/zLm5E4IaTHM/R+rdLiBM9S78C5iV/oGYUPblSw2XplO+3kFR62cxPESURW6isgOe3 aQhg==; darn=freebsd.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770916517; x=1771521317; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=7jNEDF9lfbf/+1MKaQ4LlRPcifR7j2hL6eQOZ45CgTQ=; b=HVrnwA/1birJOizLky3yIS35C0YZgM4+7OgQGtiGlamlIumxL79tOuuprOM8iDxtcj Je8sDhEVBaNBJrBa2FAw00PUpEDkfLDesZHqskL/THk3oCf54Emy8T/GoUpOVCJfXADM OXrw+Hkft30Dt1UKUR9FN4/K68HzSp32uCIAQMmHUM6wl38F/qEwP1qnETc057+b3/VX Vn/2YZSGuvabtzf83pZd8/rFHr9uYFPf/BGPZVrZqr+tQPUYPMGVvwvBNvjTLN0l9b+j gI3WZD7SnWUkNW45yacm4YQ49JoMAj25I5RGCwqNfcwCERpa3BbFW5Usw0sk8KwX98rx rAEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770916517; x=1771521317; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=7jNEDF9lfbf/+1MKaQ4LlRPcifR7j2hL6eQOZ45CgTQ=; b=WWaH8lpnkxxbkJ/OyXI8mut6DSGe2mA+86NAA18jmcZJP15x5uCn+ruKDRVVYP4jp7 Pv2NDadj4WOgg3EGBC+iGTcx25cVy6Pek1AlBF2GfyoDcng3ezeNHPHmRQMDpRhuhY7Q oWi0OHscJC4pV8n1Y8jJZ+4cKSsdG6pcRoDvUFeppOK+alUUH5HFRJet5vpFuLwr4XqJ gwNY/pYh+r48zqyDqWq7/62pHgPMOYl7u04qcbjn2UD/Am6KbvqfjAX7mWBfcpSoUTCC Qdm78egGvVcIg98/hIU0CSUdB7nNXB42Q8KE1Cxg95rYgBh5NmRqqW0O1KlKX/CCcXnm lfcg== X-Forwarded-Encrypted: i=1; AJvYcCW7T2L6lFyEM1vBt0dNfhnH0OWKV0Dh118WLJEniefbtauQ0K42/uO9ABaLKY8c6s1DicVT+27Kb8Zjk4H8lpn5wK8UkZrD@freebsd.org X-Gm-Message-State: AOJu0YxUkXhe3CgNphg6SwatoZ6TBWsWFexPINCqhhbYUGxJ1dWoQXQy fQLz+ELUHte175rvEpcEYUUGq9PCOGnUr6wk29HVTcA9axrO8cbf9pvDjO1IVdMgoTWMEOwDq0z sbX88ZX38vLKb4SqMU1bjLUA4HlpOAhY= X-Gm-Gg: AZuq6aI/9dk8/PR8fn3hLBM/IDy0GczHogl1bgJqyzTayh7iKeMJYJSAI54IqivrijC WOs7He18Wh3sCrED+pJcn0Fz67bFSEgy3zPqJcGwWhpvvtvKv6I8IfvM47zXhtOcECAAPiALIXZ 9g8aehMvSmhmfZbjrdDh2LWDT/cu7l9ktv2GfRy5z1mp/medQsVDxqrSh7AnJwrNhxqlmuIScGM 7oLDRdISbFPHzKKfxDGBTdvCZb7FGifPcjhSsOffHTL/1Vpi/Rexb3qhnlWgu65/8rsBqHOM+RZ 0bntWE4uU/Rc0S3ttePuhyBQkTC+YR18ZvYZIz1WPyZpk5CRUVJZce26jwKujlnuEiShSIwq/9Z B/+Mu4NXd+Dt25ExXSm9yo27l0tR3/bw03c/PZl2z7EU9C4djyFIUPHO1uyEiR7LXdAce4lD9+g NiVR99JTR8Nw5X3rWCpA4P+UxLlxGREptYtywJtrc5GMua3UyO8asTaNcZa5g57Qlhjs/rUZtWO MTZvkRQqt1LK3GRNBFe/TnLc+mCM3e8uLz7NB3Qj3Kz1iIZapt3esfeE8MPjXojHOjJ6QYQ5A9B huLunKaNUu0J49Bb9BKgym9LuDyAE+moJi+53zdWMzwxP97dZQbk X-Received: by 2002:a17:90b:4a8a:b0:356:23be:7ed3 with SMTP id 98e67ed59e1d1-3568f3253b7mr3710429a91.16.1770916517131; Thu, 12 Feb 2026 09:15:17 -0800 (PST) List-Id: Discussion List-Archive: https://lists.freebsd.org/archives/freebsd-virtualization List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-virtualization@freebsd.org Sender: owner-freebsd-virtualization@FreeBSD.org MIME-Version: 1.0 References: In-Reply-To: From: Mario Marietto Date: Thu, 12 Feb 2026 18:14:40 +0100 X-Gm-Features: AZwV_QjT9BsykeYhwV7Uni3QTHPl3hQoh1n7Ut7qwNoHf_efrlKKnJj_9XiZWxM Message-ID: Subject: Re: RFC: Kernel virtiofs driver To: Oleg Sidorkin Cc: Emil Tsalapatis , FreeBSD virtualization Content-Type: multipart/alternative; boundary="000000000000ee3aec064aa3a178" X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Queue-Id: 4fBhkv5P33z3K7M X-Spamd-Bar: ---- --000000000000ee3aec064aa3a178 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable --> Panics guest system in a few minutes (everything is ok when /obj is... FreeBSD 16 is working in progress ; virtiofs is work in progress...what do you expect ? On Thu, Feb 12, 2026 at 3:01=E2=80=AFPM Oleg Sidorkin = wrote: > Hello. > > My favorite test to run in bhyve guest: > > root@:/usr/src # uname -a > FreeBSD 16.0-CURRENT FreeBSD 16.0-CURRENT #1 > main-n283712-16c902f05853: Sat Feb 7 02:10:47 MSK 2026 > olsi@:/usr/obj/usr/src/amd64.amd64/sys/QUADKERNEL amd64 > root@:/usr/src # mount > /dev/vtbd0p2 on / (ufs, local, soft-updates, journaled soft-updates) > devfs on /dev (devfs) > obj on /usr/obj (p9fs, local) > 192.168.2.1:/vms/freebsd-current/usr/home on /usr/home (nfs) > 192.168.2.1:/vms/freebsd-current/usr/src on /usr/src (nfs) > 192.168.2.1:/vms/freebsd-current/usr/lib/debug on /usr/lib/debug (nfs) > 192.168.2.1:/usr/ports/distfiles on /usr/ports/distfiles (nfs) > root@:/usr/src # make -j4 buildworld buildkernel > > Panics guest system in a few minutes (everything is ok when /obj is > mounted over nfs): > > db> bt > Tracing pid 2248 tid 100165 td 0xfffff80100eb8780 > kdb_enter() at kdb_enter+0x33/frame 0xfffffe006833e560 > panic() at panic+0x43/frame 0xfffffe006833e5c0 > freevnode() at freevnode+0x2d5/frame 0xfffffe006833e620 > vput_final() at vput_final+0x96/frame 0xfffffe006833e670 > vfs_hash_insert() at vfs_hash_insert+0x226/frame 0xfffffe006833e6c0 > p9fs_vget_common() at p9fs_vget_common+0x39b/frame 0xfffffe006833e770 > p9fs_lookup() at p9fs_lookup+0x4ad/frame 0xfffffe006833e8c0 > VOP_LOOKUP_APV() at VOP_LOOKUP_APV+0x57/frame 0xfffffe006833e8f0 > vfs_lookup() at vfs_lookup+0x5aa/frame 0xfffffe006833e980 > namei() at namei+0x35d/frame 0xfffffe006833e9e0 > kern_execve() at kern_execve+0x2d1/frame 0xfffffe006833ed80 > sys_execve() at sys_execve+0x54/frame 0xfffffe006833ee00 > amd64_syscall() at amd64_syscall+0x169/frame 0xfffffe006833ef30 > fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe006833ef3= 0 > --- syscall (59, FreeBSD ELF64, execve), rip =3D 0x2cc73682f46a, rsp =3D > 0x2cc731eb2028, rbp =3D 0x2cc731eb2170 --- > db> > > I'll be really happy to test virtiofs and I hope it will do better. > > Thanks > > =D0=B2=D1=82, 10 =D1=84=D0=B5=D0=B2=D1=80. 2026=E2=80=AF=D0=B3. =D0=B2 09= :57, Mario Marietto : > > > > 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 y= ou > added ? > > > > Thanks. > > > > > > > > On Tue, Feb 10, 2026 at 4:05=E2=80=AFAM Emil Tsalapatis > 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 > >> 2) The file system that gets mounted in the guest: D46296. > >> > >> To test it you need a couple additional fixes/workarounds for > FUSE-related issues. You can grab a working tree here or apply diffs D550= 47 > and D55046. D55046 is a workaround, but still prevents an assertion failu= re > 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 > >> > >> where is the name tag you gave to the virtiofs device in the hos= t > VMM. > >> > >> Reviews and testing welcome! > >> > >> Thanks, > >> Emil > >> > >> > > > > > > -- > > Mario. > > > > -- > Oleg Sidorkin > --=20 Mario. --000000000000ee3aec064aa3a178 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
--> Panics guest system in a few minutes (everythi= ng is ok when /obj is...

FreeBSD 16 is working in = progress ; virtiofs=C2=A0is work in progress...what do you expect ?=C2=A0

On Thu, Feb 12, 2026 at 3:01=E2=80=AFPM Oleg Sido= rkin <osidorkin@gmail.com>= wrote:
Hello.
My favorite test to run in bhyve guest:

root@:/usr/src # uname -a
FreeBSD=C2=A0 16.0-CURRENT FreeBSD 16.0-CURRENT #1
main-n283712-16c902f05853: Sat Feb=C2=A0 7 02:10:47 MSK 2026
olsi@:/usr/obj/usr/src/amd64.amd64/sys/QUADKERNEL amd64
root@:/usr/src # mount
/dev/vtbd0p2 on / (ufs, local, soft-updates, journaled soft-updates)
devfs on /dev (devfs)
obj on /usr/obj (p9fs, local)
192.168.2.1:/vms/freebsd-current/usr/home on /usr/home (nfs)
192.168.2.1:/vms/freebsd-current/usr/src on /usr/src (nfs)
192.168.2.1:/vms/freebsd-current/usr/lib/debug on /usr/lib/debug (nfs)
192.168.2.1:/usr/ports/distfiles on /usr/ports/distfiles (nfs)
root@:/usr/src # make -j4 buildworld buildkernel

Panics guest system in a few minutes (everything is ok when /obj is
mounted over nfs):

db> bt
Tracing pid 2248 tid 100165 td 0xfffff80100eb8780
kdb_enter() at kdb_enter+0x33/frame 0xfffffe006833e560
panic() at panic+0x43/frame 0xfffffe006833e5c0
freevnode() at freevnode+0x2d5/frame 0xfffffe006833e620
vput_final() at vput_final+0x96/frame 0xfffffe006833e670
vfs_hash_insert() at vfs_hash_insert+0x226/frame 0xfffffe006833e6c0
p9fs_vget_common() at p9fs_vget_common+0x39b/frame 0xfffffe006833e770
p9fs_lookup() at p9fs_lookup+0x4ad/frame 0xfffffe006833e8c0
VOP_LOOKUP_APV() at VOP_LOOKUP_APV+0x57/frame 0xfffffe006833e8f0
vfs_lookup() at vfs_lookup+0x5aa/frame 0xfffffe006833e980
namei() at namei+0x35d/frame 0xfffffe006833e9e0
kern_execve() at kern_execve+0x2d1/frame 0xfffffe006833ed80
sys_execve() at sys_execve+0x54/frame 0xfffffe006833ee00
amd64_syscall() at amd64_syscall+0x169/frame 0xfffffe006833ef30
fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe006833ef30<= br> --- syscall (59, FreeBSD ELF64, execve), rip =3D 0x2cc73682f46a, rsp =3D 0x2cc731eb2028, rbp =3D 0x2cc731eb2170 ---
db>

I'll be really happy to test virtiofs and I hope it will do better.

Thanks

=D0=B2=D1=82, 10 =D1=84=D0=B5=D0=B2=D1=80. 2026=E2=80=AF=D0=B3. =D0=B2 09:5= 7, Mario Marietto <marietto2008@gmail.com>:
>
> 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 Fre= eBSD 14.3 host os. So,what's missing in this case and which features yo= u added ?
>
> Thanks.
>
>
>
> On Tue, Feb 10, 2026 at 4:05=E2=80=AFAM Emil Tsalapatis <emil@etsalapatis.com>= ; wrote:
>>
>> Hi everyone,
>>
>>=C2=A0 =C2=A0 =C2=A0I 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
>> 2) The file system that gets mounted in the guest: D46296.
>>
>> To test it you need a couple additional fixes/workarounds for FUSE= -related issues. You can grab a working tree here or apply diffs D55047 and= D55046. D55046 is a workaround, but still prevents an assertion failure re= lated 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.



--
Oleg Sidorkin


--
Ma= rio.
--000000000000ee3aec064aa3a178--