qemu-patch-raspberry4/hw
David Gibson 51f84465dd spapr: Correct compatibility mode setting for hotplugged CPUs
Currently the pseries machine sets the compatibility mode for the
guest's cpus in two places: 1) at machine reset and 2) after CAS
negotiation.

This means that if we set or negotiate a compatiblity mode, then
hotplug a cpu, the hotplugged cpu doesn't get the right mode set and
will incorrectly have the full native features.

To correct this, we set the compatibility mode on a cpu when it is
brought online with the 'start-cpu' RTAS call.  Given that we no
longer need to set the compatibility mode on all CPUs at machine
reset, so we change that to only set the mode for the boot cpu.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reported-by: Satheesh Rajendran <sathnaga@linux.vnet.ibm.com>
Tested-by: Satheesh Rajendran <sathnaga@linux.vnet.ibm.com>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
2018-01-10 12:53:00 +11:00
..
9pfs 9pfs: deprecate handle backend 2018-01-08 11:18:23 +01:00
acpi hw/acpi: ACPI_PM_* defines are not restricted to i386 arch 2017-12-18 17:07:02 +03:00
adc STM32F2xx: Add the ADC device 2016-10-04 13:28:07 +01:00
alpha hw/timer/mc146818: rename rtc_init() -> mc146818_rtc_init() 2017-12-18 17:07:02 +03:00
arm misc: remove duplicated includes 2017-12-18 17:07:02 +03:00
audio misc: remove old i386 dependency 2017-12-18 17:07:02 +03:00
block nvme: Add tracing 2017-12-22 15:03:41 +01:00
bt bt: stop the sdp memory allocation craziness 2017-08-01 17:27:33 +02:00
char misc: drop old i386 dependency 2017-12-18 17:07:03 +03:00
core Pull request 2017-12-20 11:30:55 +00: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 sm501: Add some more unimplemented registers 2018-01-10 12:52:59 +11:00
dma sun4m_iommu: remove legacy sparc_iommu_memory_rw() function 2017-10-31 17:25:37 +00:00
gpio hw/gpio/omap_gpio.c: Don't use old_mmio 2017-09-21 16:34:27 +01:00
i2c ppc4xx_i2c: Implement basic I2C functions 2018-01-10 12:52:59 +11:00
i386 acpi: Update TPM2 ACPI table to more recent specs 2017-12-22 11:03:21 -05: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 apic: add function to apic that will be used by hvf 2017-12-22 15:01:19 +01: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 hw/timer/mc146818: rename rtc_init() -> mc146818_rtc_init() 2017-12-18 17:07:02 +03: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 hw/mips/boston: Remove workaround for writes to ROM aborting 2017-12-21 09:30:32 +01:00
misc dump-guest-memory.py: fix "You can't do that without a process to debug" 2018-01-02 14:49:54 +01:00
moxie hw/moxie/moxiesim: Add support for loading a BIOS on moxiesim 2017-12-21 09:30:31 +01:00
net rtl8139: use inline net_crc32() and bitshift instead of compute_mcast_idx() 2017-12-22 10:01:27 +08:00
nios2 nios2: remove duplicated includes (in code commented out) 2017-12-18 17:07:02 +03:00
nvram nvram: add AT24Cx i2c eeprom 2017-12-15 09:49:23 +11:00
openrisc openrisc: use generic cpu_model parsing 2017-10-27 16:03:54 +02:00
pci pci: Initialize pci_dev->name before use 2017-11-16 17:46:53 +02:00
pci-bridge misc: remove old i386 dependency 2017-12-18 17:07:02 +03:00
pci-host e500: fix pci host bridge class/type 2017-12-15 09:49:24 +11:00
pcmcia hw: Clean up includes 2016-01-29 15:07:25 +00:00
ppc spapr: Correct compatibility mode setting for hotplugged CPUs 2018-01-10 12:53:00 +11:00
s390x misc: remove duplicated includes 2017-12-18 17:07:02 +03:00
scsi scsi: provide general-purpose functions to manage sense data 2017-12-21 09:30:32 +01:00
sd pci: Add INTERFACE_CONVENTIONAL_PCI_DEVICE to Conventional PCI devices 2017-10-15 05:54:43 +03:00
sh4 sh4: shix: use generic cpu_model parsing 2017-10-27 16:03:54 +02:00
smbios hw: use "qemu/osdep.h" as first #include in source files 2017-12-18 17:07:02 +03:00
sparc misc: drop old i386 dependency 2017-12-18 17:07:03 +03:00
sparc64 sparc: sun4u/sun4v/niagara: use generic cpu_model parsing 2017-10-27 16:04:27 +02:00
ssi hw/ssi/aspeed_smc: remove unused #include 2017-12-18 17:07:02 +03:00
timer hw/timer/mc146818: rename rtc_init() -> mc146818_rtc_init() 2017-12-18 17:07:02 +03:00
tpm tpm: Implement tpm_sized_buffer_reset 2017-12-22 09:01:09 -05: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 dev-storage: Fix the unusual function name 2017-12-19 10:25:08 +00:00
vfio hw: use "qemu/osdep.h" as first #include in source files 2017-12-18 17:07:02 +03:00
virtio hw/virtio-balloon: remove old i386 dependency 2017-12-18 17:07:02 +03:00
watchdog misc: drop old i386 dependency 2017-12-18 17:07:03 +03:00
xen xen/pt: Set is_express to avoid out-of-bounds write 2017-12-14 16:11:53 -08: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