Re: [PATCH v3] net/9p: add vsock transport

From: skvarlamatus

Date: Mon Sep 14 2026 - 14:34:52 EST


On Sun, Sep 13, 2026 at 14:09 +0000, asmadeus@xxxxxxxxxxxxx wrote:
> I've looked at v1/v2 threads and I don't actually see any rationale
> explained: what's the benefit of this over e.g. virito or xen
> transports?

> Do you have/use an hypervisor that cannot do virito 9p (or virtfs) but
> has vsock or something like that?

virtio-9p is only supported by Qemu/KVM. Vsock transport works on any hypervisor
with vsock support and allows using userspace 9P servers.
The motivation behind this patch is primarily driven by podman machine's
use-case, which is file sharing on Windows [1] [2].
The hypervisor there is Hyper-V/WSL, which supports vsock for host-guest
data transfers [3], but not virtio-9p or virtfs. Having vsock transport in the
driver would simplify the codebase and make the use-case more flexible.

> On a similar topic, do you have an actual server that works with vsock?

Podman implements its own 9P server in Go using the p9 library [4] with
vsock support via virtsock [5], but it runs as part of podman machine.
For standalone 9p servers, I only know of diod and example implementations
of various 9p server libraries (i.e. [6]), but none of them support vsock.

As far as I know, there is one 9p FUSE client with native vsock support
(my contribution) [7].

[1] https://github.com/podman-container-tools/podman/blob/main/cmd/podman/machine/server9p.go
[2] https://github.com/podman-container-tools/podman/blob/main/cmd/podman/machine/client9p.go
[3] https://learn.microsoft.com/en-us/windows-server/virtualization/hyper-v/make-integration-service
[4] https://github.com/hugelgupf/p9
[5] https://github.com/linuxkit/virtsock
[6] https://github.com/hugelgupf/p9/blob/main/cmd/p9ufs/p9ufs.go
[7] https://github.com/ftrvxmtrx/9pfs

--
Matus