Date: Thu, 09 Jan 2020 01:07:03 +0000 From: bugzilla-noreply@freebsd.org To: virtualization@FreeBSD.org Subject: [Bug 236922] Virtio fails as QEMU-KVM guest with Q35 chipset on Ubuntu 18.04.2 LTS Message-ID: <bug-236922-27103-w4c9NMTh3O@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-236922-27103@https.bugs.freebsd.org/bugzilla/> References: <bug-236922-27103@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=236922 --- Comment #22 from Tommy P <tommyhp2@gmail.com> --- (In reply to Bryan Venteicher from comment #13) Hi Bryan, I tried the method you've suggested to use the modules/virtio and dev/virtio from your repo on 12.0-RELEASE-p12 r356482 and encountered the following issues: 1) /usr/src/sys/dev/virtio/random/virtio_random.c:241:6: error: too many arguments to function call, expected 3, have 4 RANDOM_PURE_VIRTIO); ^~~~~~~~~~~~~~~~~~ I changed it from: random_harvest_queue(&value, sizeof(value), sizeof(value) * NBBY / 2, RANDOM_PURE_VIRTIO); to: random_harvest_queue(&value, sizeof(value), RANDOM_PURE_VIRTIO); 2) /usr/src/sys/dev/virtio/pci/virtio_pci.c:54:10: fatal error: 'virtio_pci_if.h' file not found I used sys/tools/makeobjops.awk to generate the missing virtio_pci_if.h from virtio_pci_if.m 3) A lot of "ld: error: undefined symbol" --- kernel --- linking kernel ld: error: undefined symbol: virtio_pci_disable_vq_desc >>> referenced by virtio_pci.c >>> virtio_pci.o:(vtpci_release_child_resources) They appear to all from virtio_pci_if.h 's "extern struct kobjop_desc " --------------------------------------------------------- I also compared the compile object files between your repo and the src r356482. I think there are some missing (virtio_pci_if, virtio_pci_legacy, virtio_pci_modern): root@d-build-fbsd12:/usr/obj # ll usr/src_virtio/amd64.amd64/sys/Custom/virt* -rw-r--r-- 1 root wheel 11312 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio.o -rw-r--r-- 1 root wheel 12480 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_balloon.o -rw-r--r-- 1 root wheel 24608 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_blk.o -rw-r--r-- 1 root wheel 2232 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_bus_if.c -rw-r--r-- 1 root wheel 7531 Jan 8 06:09 usr/src_virtio/amd64.amd64/sys/Custom/virtio_bus_if.h -rw-r--r-- 1 root wheel 2720 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_bus_if.o -rw-r--r-- 1 root wheel 797 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_if.c -rw-r--r-- 1 root wheel 1226 Jan 8 06:09 usr/src_virtio/amd64.amd64/sys/Custom/virtio_if.h -rw-r--r-- 1 root wheel 1272 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_if.o -rw-r--r-- 1 root wheel 17632 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_pci.o -rw-r--r-- 1 root wheel 1283 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_pci_if.c -rw-r--r-- 1 root wheel 4088 Jan 8 06:09 usr/src_virtio/amd64.amd64/sys/Custom/virtio_pci_if.h -rw-r--r-- 1 root wheel 1792 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_pci_if.o -rw-r--r-- 1 root wheel 15312 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_pci_legacy.o -rw-r--r-- 1 root wheel 26664 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_pci_modern.o -rw-r--r-- 1 root wheel 41248 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtio_scsi.o -rw-r--r-- 1 root wheel 8904 Jan 8 06:11 usr/src_virtio/amd64.amd64/sys/Custom/virtqueue.o root@d-build-fbsd12:/usr/obj # ll usr/src12.0/amd64.amd64/sys/Custom/virt* -rw-r--r-- 1 root wheel 11312 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio.o -rw-r--r-- 1 root wheel 12480 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_balloon.o -rw-r--r-- 1 root wheel 24608 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_blk.o -rw-r--r-- 1 root wheel 2229 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_bus_if.c -rw-r--r-- 1 root wheel 7528 Jan 8 14:33 usr/src12.0/amd64.amd64/sys/Custom/virtio_bus_if.h -rw-r--r-- 1 root wheel 2720 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_bus_if.o -rw-r--r-- 1 root wheel 794 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_if.c -rw-r--r-- 1 root wheel 1223 Jan 8 14:33 usr/src12.0/amd64.amd64/sys/Custom/virtio_if.h -rw-r--r-- 1 root wheel 1272 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_if.o -rw-r--r-- 1 root wheel 17632 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_pci.o -rw-r--r-- 1 root wheel 41248 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtio_scsi.o -rw-r--r-- 1 root wheel 8904 Jan 8 14:34 usr/src12.0/amd64.amd64/sys/Custom/virtqueue.o The module's virtio/pci/Makefile does include those source files but they didn't appear to be compiled: pci/Makefile:25: pci/Makefile:26:.PATH: ${SRCTOP}/sys/dev/virtio/pci pci/Makefile:27: pci/Makefile:28:KMOD= virtio_pci pci/Makefile:29:SRCS= virtio_pci.c virtio_pci_legacy.c virtio_pci_modern.c pci/Makefile:30:SRCS+= virtio_pci_if.c virtio_pci_if.h pci/Makefile:31:SRCS+= virtio_bus_if.h virtio_if.h pci/Makefile:32:SRCS+= bus_if.h device_if.h pci_if.h pci/Makefile:33: pci/Makefile:34:.include <bsd.kmod.mk> Do you have any suggestion to resolve #3 in order to proceed? Thanks. -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-236922-27103-w4c9NMTh3O>
