Hi,
> Hmm, I realize we have a different behaviour when building devices as
> modules shared by different qemu system binaries.
>
> It will attempt to load any kind of modules:
>
> ./qemu-system-m68k -kernel ~/Downloads/vmlinux-5.8.0-3-m68k -device
> virtio-gpu-pci
> Failed to open module:
> /home/elmarco/src/qemu/buildnodoc/hw-display-virtio-gpu-pci.so: undefined
> symbol: virtio_instance_init_common
> qemu-system-m68k: -device virtio-gpu-pci: 'virtio-gpu-pci' is not a valid
> device model name
Yes. The last line is printed for non-modular builds too.
The module load error can obviously only happen on modular builds.
> $ qemu-system-m68k -device help
> Failed to open module: /usr/lib64/qemu/hw-usb-smartcard.so: undefined
> symbol: ccid_card_send_apdu_to_guest
> Failed to open module: /usr/lib64/qemu/hw-display-qxl.so: undefined symbol:
> vga_ioport_read
That one is fixed meanwhile:
commit 501093207eb1ed4845e0a65ee1ce7db7b9676e0b
Author: Gerd Hoffmann <kraxel@redhat.com>
Date: Wed Sep 23 11:12:17 2020 +0200
module: silence errors for module_load_qom_all().
Ok, but that could hide real errors, couldn't it? What about the proposal to have a subdir per arch with symlinks?