nova/releasenotes/notes/Use-virt-as-machine-type-for-ARMv7-cd2c252336057ec8.yaml
Kashyap Chamarthy e155baefb0 libvirt: Use 'virt' as the default machine type for ARMv7
The existing Nova's default machine type for ARMv7 ('vexpress-15') was
added more than four years ago (in commit: 5b27fe7: "libvirt: Allow
specification of default machine type").  The 'vexpress-15' board is a
specific development board, which has hardware limitations (like only
single ethernet adapter).

The upstream QEMU recommendation[1] for the past couple of years is to
use the 'virt' machine type for both ARMv7, and AArch64, which was
specifically designed to be used with virutal machines.  Quoting a
write-up[2] from QEMU's ARM subsystem maintainer:

    "Why the 'virt' board?

    "QEMU has models of nearly 50 different ARM boards, which makes it
    difficult for new users to pick one which is right for their
    purposes.  This wild profusion reflects a similar diversity in the
    real hardware world: ARM systems come in many different flavours
    with very different hardware components and capabilities. A kernel
    which is expecting to run on one system will likely not run on
    another. Many of QEMU’s models are annoyingly limited because the
    real hardware was also limited — there’s no PCI bus on most mobile
    devices, after all, and a fifteen year old development board
    wouldn’t have had a gigabyte of RAM on it.

    "My recommendation is that if you don’t know for certain that you
    want a model of a specific device, you should choose the “virt”
    board. This is a purely virtual platform designed for use in virtual
    machines, and it supports PCI, virtio, a recent ARM CPU and large
    amounts of RAM. The only thing it doesn’t have out of the box is
    graphics, but graphical programs on a fully emulated system run very
    slowly anyway so are best avoided."

So, change the default machine type for ARMv7 arch to be 'virt'.

[1] https://wiki.qemu.org/Documentation/Platforms/ARM
[2] https://translatedcode.wordpress.com/2016/11/03/installing-debian-on-qemus-32-bit-arm-virt-board/

Change-Id: If9ffa5a019f67734a9f30ccaf3ab96ff41262dc8
Signed-off-by: Kashyap Chamarthy <kchamart@redhat.com>
2018-09-17 11:14:26 +02:00

13 lines
629 B
YAML

---
upgrade:
- |
The default QEMU machine type for ARMv7 architecture is now changed
to ``virt`` (from the older ``vexpress-a15``, which is a particular
ARM development board). The ``virt`` board is the recommended
default for ARMv7, which is explicitly designed to be
used with virtual machines. It is more flexible, supports PCI and
'virtio' devices, has decent RAM limits, and so forth. For
pre-existing Nova guests on ARMv7 to acquire the ``virt`` machine
type: (a) upgrade Nova with this fix; (b) explicitly start and stop
the guests, then they will pick up the 'virt' machine type.