qemu-patch-raspberry4/include/hw
Eduardo Habkost 9337e3b6e1 target-i386: Disable PMU CPUID leaf by default
Bug description: QEMU currently gets all bits from GET_SUPPORTED_CPUID
for CPUID leaf 0xA and passes them directly to the guest. This makes
the guest ABI depend on host kernel and host CPU capabilities, and
breaks live migration if we migrate between hosts with different
capabilities (e.g., different number of PMU counters).

Add a "pmu" property to X86CPU, and set it to true only on "-cpu host",
or on pc-*-1.5 and older machine-types.

For now, setting pmu=on will enable the current passthrough mode that
doesn't have any ABI stability guarantees, but in the future we may
implement a mode where the PMU CPUID bits are stable and configurable.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
2013-07-29 15:29:16 +02:00
..
acpi ich9: kill cmos_s3 2013-04-24 11:50:18 -05:00
arm arm/boot: Allow boards to modify the FDT blob 2013-07-19 12:58:47 +01:00
audio isa: QOM'ify ISADevice 2013-06-07 14:55:33 +02:00
block fdc: QOM'ify ISA floppy controller 2013-04-29 08:27:47 -05:00
char Merge branch 'realize-isa.v2' of git://github.com/afaerber/qemu-cpu 2013-06-15 10:53:44 +00:00
cpu target-i386: Move APIC to ICC bus 2013-05-01 13:06:07 +02:00
cris
i2c
i386 target-i386: Disable PMU CPUID leaf by default 2013-07-29 15:29:16 +02:00
input input: introduce keyboard handler list 2013-04-24 11:50:18 -05:00
isa isa_mmio: delete 2013-07-25 08:12:27 -05:00
kvm
lm32
m68k
mips hw/mips: align initrd to 64KB to avoid kernel error 2013-07-29 00:27:35 +02:00
misc
nvram fw_cfg: add API to find FW cfg object 2013-06-02 18:14:14 +03:00
pci Xen PV Device 2013-07-29 11:13:44 +00:00
pci-host q35: Use type-safe cast instead of direct access of parent dev 2013-07-23 00:37:34 +02:00
ppc PPC: dbdma: Support unaligned DMA access 2013-07-11 18:51:25 +02:00
s390x
scsi scsi: Improve error propagation for scsi_bus_legacy_handle_cmdline() 2013-07-23 00:37:35 +02:00
sh4 sh7750: Change cpu field type to SuperHCPU 2013-04-13 13:51:45 +02:00
sparc firmware_abi: move to include/hw/nvram/ 2013-06-02 18:13:54 +03:00
timer i8254: Convert PITCommonState to QOM realizefn 2013-06-07 14:55:24 +02:00
unicore32
virtio arm-devs queue 2013-07-22 10:14:24 -05:00
xen xen: remove xen_vcpu_init 2013-06-03 15:41:27 +00:00
boards.h Add hot_add_cpu hook to QEMUMachine 2013-05-01 13:06:07 +02:00
bt.h
devices.h arm: fix location of some include files 2013-04-15 15:16:01 +02:00
elf_ops.h
empty_slot.h
hw.h linux-user: Fix compilation failure 2013-06-27 15:38:35 -05:00
ide.h
irq.h
loader.h hw/loader: Support ramdisk with u-boot header 2013-07-22 12:00:56 +01:00
pcmcia.h
ptimer.h
qdev-core.h qdev: Drop FROM_QBUS() macro 2013-06-07 14:55:33 +02:00
qdev-dma.h
qdev-properties.h qdev: Introduce qdev_prop_set_globals_for_type() 2013-05-06 19:50:52 +02:00
qdev.h
sd.h
ssi.h
stream.h Trivial grammar and spelling fixes 2013-05-01 20:55:21 +04:00
sysbus.h sysbus: Document SysBusDeviceClass::init and realize semantics 2013-07-23 00:37:34 +02:00
usb.h usb: add serial bus property 2013-06-24 08:41:07 +02:00
xilinx.h stream: Remove app argument hack 2013-04-16 10:04:23 +02:00