[libvirt] [PATCH 1/2] Add armv6l Support as guest

infos at nafets.de infos at nafets.de
Tue Nov 27 19:37:47 UTC 2018



> -----Ursprüngliche Nachricht-----
> Von: Andrea Bolognani <abologna at redhat.com>
> Gesendet: Montag, 26. November 2018 17:47
> An: infos at nafets.de; libvir-list at redhat.com
> Cc: Stefan Schallenberg <nafets227 at github.github.io>
> Betreff: Re: [libvirt] [PATCH 1/2] Add armv6l Support as guest
> 
> On Sun, 2018-11-25 at 21:09 +0000, infos at nafets.de wrote:
> > From: Stefan Schallenberg <nafets227 at users.noreply.github.com>
> >
> > Support for armv6l qemu guests has been added.
> > Tested with arm1176 CPU on x86.
> 
> What OS did you run inside the guest? I would like to give this a try myself.
I use:
- Arch Linux ARM http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-latest.tar.gz
- Kernel  https://github.com/dhruvvyas90/qemu-rpi-kernel/blob/master/kernel-qemu-4.14.50-stretch?raw=true
- dtb https://github.com/dhruvvyas90/qemu-rpi-kernel/blob/master/versatile-pb.dtb?raw=true
with
virt-install --name vPiBuildTest --virt-type qemu --memory 256 --vcpus=1 --import --disk /data/test/pibuild/vPiBuildTest-sys.raw,format=raw,bus=scsi --events on_crash=restart --noautoconsole --noreboot --net none --arch armv6l --cpu arm1176 --machine versatilepb --boot "kernel=/data/test/pibuild/kernel-qemu-4.14.50-stretch,dtb=/data/test/pibuild/versatile-pb.dtb,kernel_args=root=/dev/sda2 panic=1 rootfstype=ext4 rw console=ttyAMA0,115200"

Drawback ist hat loading modules does not work, as the (booted) kernel is not from archlinux distro. Not sure how to solve it, one option ist o create an PKGBUILD fort he kernel from dhruvvyas90.

But it boots :=)
> 
> > Signed-off-by: Stefan Schallenberg <infos at nafets.de>
> 
> The S-o-b should contain a proper, non-obfuscated email address.
> 
Will follow up on this and other details with an updated patch later.

[...]

> [...]
> > @@ -2199,7 +2199,7 @@ static const char *preferredMachines[] =  {
> >      NULL, /* VIR_ARCH_NONE (not a real arch :) */
> >      "clipper", /* VIR_ARCH_ALPHA */
> > -    NULL, /* VIR_ARCH_ARMV6L (no QEMU impl) */
> > +    "versatilepb", /* VIR_ARCH_ARMV6L */
> >      "integratorcp", /* VIR_ARCH_ARMV7L */
> >      "integratorcp", /* VIR_ARCH_ARMV7B */
> 
> How did you arrive to the conclusion that versatilepb should be the default
> machine type for the architecture? Given how QEMU works, I would expect it to
> match the ARMv7 default.
Good point, I just changed it to be able to test.

> Note that there's a patch on the list that changes all defaults for ARM
> architectures to NULL, so based on whether that patch is ultimately merged you
> might want to do the same.
Absolutely, how to proceed? Should I wait for the other patcht o be merged before re-posting an updated patch?

[...] 
> > --- a/tests/capabilityschemadata/caps-qemu-kvm.xml
> > +++ b/tests/capabilityschemadata/caps-qemu-kvm.xml
> > @@ -81,6 +81,16 @@
> >      </features>
> >    </guest>
> >
> > +<guest>
> > +    <os_type>hvm</os_type>
> > +    <arch name='armv7l'>
> > +      <wordsize>32</wordsize>
> > +      <emulator>/usr/bin/qemu-system-arm</emulator>
> > +      <machine>versatilepb</machine>
> > +      <domain type='qemu'/>
> > +    </arch>
> > +  </guest>
> 
> This looks very wrong - you added support for the ARMv6l architecture, and
> suddenly an entry for the *ARMv7l* architecture popped up!
> 
> It's not indented properly, either. Did you add this manually?
Ups, it´s a typo should have been armv6l, I will correct in an updated patch.
Yes I added it manually, can you point me to a better way?






More information about the libvir-list mailing list