opnsense-src/sys/dev/virtio
Danilo Egea Gondolfo 014dcda455 virtio_p9fs: fix panic on qemu/kvm
When the module is loaded on a system running on qemu/kvm the "modern"
virtio infrastructure is used and virtio_read_device_config() will end
up calling vtpci_modern_read_dev_config(). This function cannot read
values of arbitrary sizes and will panic if the p9fs mount tag size is
not supported by it.

Use virtio_read_device_config_array() instead. It was tested on both
bhyve and qemu/kvm.

PR: 280098
Co-authored-by: Mark Peek <mp@FreeBSD.org>
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1320
2025-06-20 09:54:55 +02:00
..
balloon sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
block sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
console virtio(4): Fix two typos in KASSERT messages 2024-06-21 05:46:51 +02:00
gpu vt: Add vd_bitblt_argb 2024-07-29 18:37:12 +02:00
mmio sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
network net: Remove unneeded NULL check for the allocated ifnet 2024-07-12 20:03:37 +08:00
p9fs virtio_p9fs: fix panic on qemu/kvm 2025-06-20 09:54:55 +02:00
pci virtio: Use device_set_descf() 2024-06-09 09:37:56 -04:00
random virtio_random: Pipeline fetching the data 2023-10-11 08:10:32 -07:00
scsi Use xpt_path_sbuf() in few drivers 2023-12-22 23:36:56 -05:00
virtio.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
virtio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
virtio_bus_if.m sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
virtio_config.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
virtio_endian.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
virtio_ids.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
virtio_if.m sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
virtio_ring.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
virtqueue.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
virtqueue.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00