qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v18 00/10] Shared library module support


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH v18 00/10] Shared library module support
Date: Wed, 5 Feb 2014 18:19:04 +0000

On 31 January 2014 14:49, Paolo Bonzini <address@hidden> wrote:
> Yet another rebase of the loadable module series, with the
> following changes:
>
> 1) reworked a bit the build system magic so that "make foo.o" will pick
> the right flags when foo.o is part of a module.
>
> 2) redid the split between patches 6/7/9, doing first the makefile rules,
> then the C code to load the modules, and only introducing the (initially
> empty) *-obj-m variables at the end.
>
> 3) finally, tweaked the patches to only require limited changes to
> scripts/create_config.

My testing on MacOS shows that it's not looking in the right
relative-to-executable path for modules. This is with an extra
printf in module_load() to show every path we pass to
module_load_file():

manooth$ ./build/modules/x86_64-softmmu/qemu-system-x86_64 -cdrom
http://boot.ipxe.org/ipxe.iso
trying module load /usr/local/lib/qemu/block-curl.so
trying module load /../block-curl.so
trying module load /block-curl.so
Can't find module: block-curl
trying module load /usr/local/lib/qemu/block-ssh.so
trying module load /../block-ssh.so
trying module load /block-ssh.so
Can't find module: block-ssh
qemu-system-x86_64: -cdrom http://boot.ipxe.org/ipxe.iso: could not
open disk image http://boot.ipxe.org/ipxe.iso: Unknown protocol

Looking in "/../" and "/" seems pretty weird.

Contrast the set of search paths on Linux:
address@hidden:~/src/qemu/qemu$
./build/modules/x86_64-softmmu/qemu-system-x86_64 -cdrom
http://boot.ipxe.org/ipxe.iso
trying /usr/local/lib/qemu/block-curl.so
trying /home/pm215/src/qemu/qemu/build/modules/x86_64-softmmu/../block-curl.so
trying /usr/local/lib/qemu/block-rbd.so
trying /home/pm215/src/qemu/qemu/build/modules/x86_64-softmmu/../block-rbd.so

Looks like we're not getting the executable path
correctly on MacOS for some reason.

Also, mjt pointed out on IRC that we probably want to allow
installing binary modules into a path with the arch name in
it, to allow for multiarch distros.

thanks
-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]