[Bug 280098] 9pfs panics on qemu+kvm
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 02 Jul 2024 20:40:20 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280098 --- Comment #2 from Danilo Egea Gondolfo <danilo@FreeBSD.org> --- Ok, I think I get it (kind of). This patch will do the trick. But I'm not very familiar with the virtio infrastructure yet so I'd like some feedback: --- diff --git a/sys/dev/virtio/p9fs/virtio_p9fs.c b/sys/dev/virtio/p9fs/virtio_p9fs.c index aa174d3bd5b..3b849e26246 100644 --- a/sys/dev/virtio/p9fs/virtio_p9fs.c +++ b/sys/dev/virtio/p9fs/virtio_p9fs.c @@ -320,6 +320,7 @@ vt9p_attach(device_t dev) struct sysctl_oid *tree; struct vt9p_softc *chan; char *mount_tag; + char *mount_tag_p; int error; uint16_t mount_tag_len; @@ -352,9 +353,12 @@ vt9p_attach(device_t dev) mount_tag = malloc(mount_tag_len + 1, M_P9FS_MNTTAG, M_WAITOK | M_ZERO); - virtio_read_device_config(dev, - offsetof(struct virtio_9pnet_config, mount_tag), - mount_tag, mount_tag_len); + mount_tag_p = mount_tag; + for (int i = 0; i < mount_tag_len; i++, mount_tag_p++) { + virtio_read_device_config(dev, + offsetof(struct virtio_9pnet_config, mount_tag) + i, + mount_tag_p, 1); + } device_printf(dev, "Mount tag: %s\n", mount_tag); --- With this patch I get virtio_p9fs0: <VirtIO 9P Transport> on virtio_pci7 virtio_p9fs0: Mount tag: config root@freebsd:~ # mount -t p9fs config /mnt root@freebsd:~ # ls /mnt/ agent-mounts.json agent.crt files lxd-agent server.crt udev agent.conf agent.key install.sh nics systemd root@freebsd:~ # mount /dev/da0p2 on / (ufs, local, synchronous, soft-updates, journaled soft-updates) devfs on /dev (devfs) /dev/da0p1 on /boot/efi (msdosfs, local) config on /mnt (p9fs, local) -- You are receiving this mail because: You are the assignee for the bug.