On Wed, Jul 04, 2018 at 02:10:10PM -0400, ryang wrote: > The current paths for modules are CONFIG_QEMU_MODDIR and paths relative > to the executable. Qemu and its modules can be installed and executed in > paths that are different from these search paths. This change allows > a search path to be specified by environment variable. > > An example usage for this is postmarketOS[1]. This is a build environment > for Alpine Linux. It sets up Alpine Linux in a chroot environment. > Alpine's Qemu packages are installed in the chroot. The Alpine Linux Qemu > package is used to test compiled Alpine Linux system images. This way there > isn't a reliance on the which ever version of Qemu the host system / distro > provides. > > postmarketOS executes Qemu on host system outside of the chroot > The Qemu module search path needs to point to the location of the > chroot relative to the host system. > > e.g. > The root of the Alpine Linux chroot is: > ~/.local/var/pmbootstrap/chroot_native/ > > Alpine's Qemu is installed at > ~/.local/var/pmbootstrap/chroot_native/usr/bin/ > > The Qemu module search path needs to be: > QEMU_MODULE_DIR=~/.local/var/pmbootstrap/chroot_native/usr/lib/qemu/ > > [1] https://postmarketos.org/ > > Signed-off-by: ryang <dec...@gmail.com> > --- > > v2: > - fix checkpatch errors > v3: > - initialize n_dirs variable > v4: > - change env variable suffix from _PATH to _DIR > - renamed search_path to search_dir and make it const > > util/module.c | 22 ++++++++++++++-------- > 1 file changed, 14 insertions(+), 8 deletions(-)
Reviewed-by: Daniel P. Berrangé <berra...@redhat.com> Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|