qemu-e2k/target-s390x
David Hildenbrand 80560137cf s390x/cpumodel: check and apply the CPU model
We have to test if a configured CPU model is runnable in the current
configuration, and if not report why that is the case. This is done by
comparing it to the maximum supported model (host for KVM or z900 for TCG).
Also, we want to do some base sanity checking for a configured CPU model.

We'll cache the maximum model and the applied model (for performance
reasons and because KVM can only be configured before any VCPU is created).

For unavailable "host" model, we have to make sure that we inform KVM,
so it can do some compatibility stuff (enable CMMA later on to be precise).

Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Message-Id: <20160905085244.99980-13-dahi@linux.vnet.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
2016-09-06 17:06:50 +02:00
..
Makefile.objs s390x/cpumodel: generate CPU feature lists for CPU models 2016-09-06 17:06:49 +02:00
arch_dump.c s390: Clean up includes 2016-01-29 15:07:22 +00:00
cc_helper.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
cpu-qom.h s390x/cpumodel: register defined CPU models as subclasses 2016-09-06 17:06:49 +02:00
cpu.c s390x/cpumodel: expose features and feature groups as properties 2016-09-06 17:06:50 +02:00
cpu.h s390x/cpumodel: expose features and feature groups as properties 2016-09-06 17:06:50 +02:00
cpu_features.c s390x/cpumodel: introduce CPU feature group definitions 2016-09-06 17:06:49 +02:00
cpu_features.h s390x/cpumodel: introduce CPU feature group definitions 2016-09-06 17:06:49 +02:00
cpu_features_def.h s390x/cpumodel: introduce CPU features 2016-09-06 17:06:49 +02:00
cpu_models.c s390x/cpumodel: check and apply the CPU model 2016-09-06 17:06:50 +02:00
cpu_models.h s390x/cpumodel: let the CPU model handle feature checks 2016-09-06 17:06:50 +02:00
fpu_helper.c softfloat: Implement run-time-configurable meaning of signaling NaN bit 2016-06-24 13:40:37 +01:00
gdbstub.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
gen-features.c s390x/cpumodel: generate CPU feature group lists 2016-09-06 17:06:49 +02:00
helper.c s390x/cpumodel: "host" and "qemu" as CPU subclasses 2016-09-06 17:06:49 +02:00
helper.h softfloat: Implement run-time-configurable meaning of signaling NaN bit 2016-06-24 13:40:37 +01:00
insn-data.def target-s390x: wire up I/O instructions in TCG mode 2015-06-17 12:40:50 +02:00
insn-format.def target-s390: Add format based disassassmbly infrastructure 2013-01-05 12:00:27 -08:00
int_helper.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
interrupt.c s390x: reorganize CSS bits between cpu.h and other headers 2016-05-19 16:42:28 +02:00
ioinst.c s390x/ioinst: advertise fcs facility 2016-09-05 15:15:16 +02:00
kvm.c s390x/cpumodel: let the CPU model handle feature checks 2016-09-06 17:06:50 +02:00
machine.c s390x/cpumodel: let the CPU model handle feature checks 2016-09-06 17:06:50 +02:00
mem_helper.c Fix confusing argument names in some common functions 2016-07-12 13:06:08 +01:00
misc_helper.c cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
mmu_helper.c s390x: fix debug statement in trigger_page_fault() 2016-03-01 12:15:28 +01:00
trace-events trace-events: fix first line comment in trace-events 2016-08-12 10:36:01 +01:00
translate.c softfloat: Implement run-time-configurable meaning of signaling NaN bit 2016-06-24 13:40:37 +01:00