On Wed, Mar 04, 2015 at 10:18:28AM +0000, Richard W.M. Jones wrote:
On Tue, Mar 03, 2015 at 07:37:47PM -0600, Dennis Gilmore wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi all,
>
> I was testing oz/imagefactory on 32 bit arm, you have to have
> kernel-lpae installed to run kvm. while you can have the regular
> kernel installed also. You end up having the system booting the regular
> kernel and you do not get kvm. Ideally supermin will work with the lpae
> kernel.
>
https://github.com/libguestfs/supermin/blob/master/src/kernel.ml#L112
> explictly removes it.
This check was added in the following commit:
commit dc3e43babd76883df0493b57d563ca3b69e2662c
Author: Richard W.M. Jones <rjones(a)redhat.com>
Date: Thu Aug 1 11:49:15 2013 +0100
helper: On arm, don't choose a .lpae or .tegra kernel.
The vexpress-aX emulation we are using in qemu doesn't support these
kernels.
The concern was that the lpae kernels don't boot under qemu. If they
do, then I can remove this check.
I resurrected my Cubietruck today. It boots with an lpae kernel, and
if I remove all ordinary kernels then I can reproduce the bug at will
using 'libguestfs-test-tool':
$ libguestfs-test-tool
[...]
supermin: build: 7230 files, after adding hostfiles
supermin: build: 7254 files, after munging
supermin: failed to find a suitable kernel (host_cpu=armv7hl).
I looked for kernels in /boot and modules in /lib/modules.
If this is a Xen guest, and you only have Xen domU kernels
installed, try installing a fullvirt kernel (only for
supermin use, you shouldn't boot the Xen guest with it).
libguestfs: error: /usr/bin/supermin exited with error status 1, see debug messages
above
libguestfs-test-tool: failed to launch appliance
Setting SUPERMIN_KERNEL etc does not help for me.
I modified supermin to drop the check for "lpae":
https://github.com/libguestfs/supermin/commit/68332640d5d78317e7914995a2c...
Annoyingly you can't just pass an environment variable to
libguestfs-test-tool to make it use another supermin binary, but must
rebuild libguestfs from source. Anyway, the lpae kernel works just
fine now.
I also changed libguestfs to drop the -dtb parameter (relying instead
on -M virt and qemu's internal DT generation):
https://github.com/libguestfs/libguestfs/commit/af762e43424382d895d3a10aa...
This probably requires a more recent version of qemu than the one in
Fedora 21. It works for me with qemu.git.
Those patches will be in Rawhide soon. As ever, file bug(s) if you
need backports.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages.
http://libguestfs.org