qemu-patch-raspberry4/hw
David Gibson 2938664286 spapr: Handle VMX/VSX presence as an spapr capability flag
We currently have some conditionals in the spapr device tree code to decide
whether or not to advertise the availability of the VMX (aka Altivec) and
VSX vector extensions to the guest, based on whether the guest cpu has
those features.

This can lead to confusion and subtle failures on migration, since it makes
a guest visible change based only on host capabilities.  We now have a
better mechanism for this, in spapr capabilities flags, which explicitly
depend on user options rather than host capabilities.

Rework the advertisement of VSX and VMX based on a new VSX capability.  We
no longer bother with a conditional for VMX support, because every CPU
that's ever been supported by the pseries machine type supports VMX.

NOTE: Some userspace distributions (e.g. RHEL7.4) already rely on
availability of VSX in libc, so using cap-vsx=off may lead to a fatal
SIGILL in init.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Greg Kurz <groug@kaod.org>
2018-01-17 09:35:24 +11:00
..
9pfs 9pfs: deprecate handle backend 2018-01-08 11:18:23 +01:00
acpi Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
adc maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
alpha Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
arm hw/arm/virt: Add virt-2.12 machine type 2018-01-16 13:28:10 +00:00
audio misc: remove old i386 dependency 2017-12-18 17:07:02 +03:00
block maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
bt bt: stop the sdp memory allocation craziness 2017-08-01 17:27:33 +02:00
char maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
core Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
cpu hw: use "qemu/osdep.h" as first #include in source files 2017-12-18 17:07:02 +03:00
cris cris: use generic cpu_model parsing 2017-10-27 16:03:54 +02:00
display * QemuMutex tracing improvements (Alex) 2018-01-16 15:45:15 +00:00
dma maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
gpio hw/gpio/omap_gpio.c: Don't use old_mmio 2017-09-21 16:34:27 +01:00
i2c * QemuMutex tracing improvements (Alex) 2018-01-16 15:45:15 +00:00
i386 * QemuMutex tracing improvements (Alex) 2018-01-16 15:45:15 +00:00
ide hw/ide: Emulate SiI3112 SATA controller 2018-01-10 12:53:00 +11:00
input Split adb.c into adb.c, adb-mouse.c and adb-kbd.c 2017-12-21 20:11:28 +01:00
intc hw/intc/armv7m: Support byte and halfword accesses to CFSR 2018-01-16 13:28:09 +00:00
ipack pci: Add INTERFACE_CONVENTIONAL_PCI_DEVICE to Conventional PCI devices 2017-10-15 05:54:43 +03:00
ipmi hw/ipmi: remove old i386 dependency 2017-12-18 17:07:02 +03:00
isa Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
lm32 lm32: lm32_boards: use generic cpu_model parsing 2017-10-27 16:03:54 +02:00
m68k m68k: mcf5208: use generic cpu_model parsing 2017-10-27 16:03:54 +02:00
mem spapr: replace numa_get_node() with lookup in pc-dimm list 2017-12-15 09:49:24 +11:00
microblaze hw: Use new memory_region_init_{ram, rom, rom_device}() functions 2017-07-14 17:59:42 +01:00
mips Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
misc maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
moxie hw/moxie/moxiesim: Add support for loading a BIOS on moxiesim 2017-12-21 09:30:31 +01:00
net * QemuMutex tracing improvements (Alex) 2018-01-16 15:45:15 +00:00
nios2 nios2: remove duplicated includes (in code commented out) 2017-12-18 17:07:02 +03:00
nvram mips: fix potential fopen(NULL,...) 2018-01-16 14:54:50 +01:00
openrisc openrisc: use generic cpu_model parsing 2017-10-27 16:03:54 +02:00
pci pci: Eliminate pci_find_primary_bus() 2017-12-05 19:13:45 +02:00
pci-bridge Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
pci-host Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
pcmcia hw: Clean up includes 2016-01-29 15:07:25 +00:00
ppc spapr: Handle VMX/VSX presence as an spapr capability flag 2018-01-17 09:35:24 +11:00
s390x Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
scsi * QemuMutex tracing improvements (Alex) 2018-01-16 15:45:15 +00:00
sd sdhci: add a 'dma' property to the sysbus devices 2018-01-16 13:28:21 +00:00
sh4 pci: Rename root bus initialization functions for clarity 2017-12-05 19:13:45 +02:00
smbios Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
sparc sun4m: remove include/hw/sparc/sun4m.h and all references to it 2018-01-09 21:48:20 +00:00
sparc64 sun4u_iommu: add trace event for IOMMU translations 2018-01-09 21:48:20 +00:00
ssi maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
timer maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
tpm maint: Fix macros with broken 'do/while(0); ' usage 2018-01-16 14:54:52 +01:00
tricore tricore: use generic cpu_model parsing 2017-10-27 16:04:27 +02:00
unicore32 hw/unicore32: restrict hw addr defines to source file 2017-12-18 17:07:02 +03:00
usb Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
vfio Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
virtio Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
watchdog misc: drop old i386 dependency 2017-12-18 17:07:03 +03:00
xen Merge remote-tracking branch 'origin/master' into HEAD 2018-01-11 22:03:50 +02:00
xenpv xenfb: remove xen_init_display "temporary" hack 2017-07-07 11:10:03 -07:00
xtensa xtensa: lx60/lx200/ml605/kc705: use generic cpu_model parsing 2017-10-27 16:04:27 +02:00
Makefile.objs 9pfs: fix dependencies 2017-08-30 18:23:25 +02:00