cpu: Change parent type to Device
This finally makes the CPU class a subclass of the Device class,allowing us to start using DeviceState properties on CPU subclasses.
It has no_user=1, as creating CPUs using -device doesn't work yet.
Signed-off-by: Igor Mammedov <imammedo@redhat.com>...
target-i386: kvm: -cpu host: Use GET_SUPPORTED_CPUID for SVM features
The existing -cpu host code simply sets every bit inside svm_features(initializing it to -1), and that makes it impossible to make theenforce/check options work properly when the user asks for SVM features...
target-i386: kvm: Enable all supported KVM features for -cpu host
When using -cpu host, we don't need to use the kvm_default_featuresvariable, as the user is explicitly asking QEMU to enable all featuresupported by the host.
This changes the kvm_cpu_fill_host() code to use GET_SUPPORTED_CPUID to...
target-i386: check/enforce: Fix CPUID leaf numbers on error messages
The -cpu check/enforce warnings are printing incorrect information about themissing flags. There are no feature flags on CPUID leaves 0 and 0x80000000, butthere were references to 0 and 0x80000000 in the table at...
target-i386: check/enforce: Do not ignore "hypervisor" flag
We don't need any hack to ignore CPUID_EXT_HYPERVISOR anymore, becausekvm_arch_get_supported_cpuid() now sets CPUID_EXT_HYPERVISOR properly.So, this shouldn't introduce any behavior change, but it makes the code...
target-i386: check/enforce: Check all CPUID.80000001H.EDX bits
I have no idea why PPRO_FEATURES was being ignored on the check of theCPUID.80000001H.EDX bits. I believe it was a mistake, and it wassupposed to be ~(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) or just...
target-i386: check/enforce: Check SVM flag support as well
When nested SVM is supported, the kernel returns the SVM flag onGET_SUPPORTED_CPUID1, so we can check the SVM flag safely inkvm_check_features_against_host().
I don't know why the original code ignored the SVM flag. Maybe it was...
libqemustub: sysbus_get_default() stub
The stub will be used on cases where sysbus.c is not compiled in (e.g.*-user).
Note that code that uses NULL as the bus with qdev{_try,}_create()implicitly uses sysbus_get_default() as the bus, and will still require...
qdev: Include qdev code into *-user, too
The code depends on some functions from qemu-option.o, so addqemu-option.o to universal-obj-y to make sure it's included.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>Signed-off-by: Andreas Färber <afaerber@suse.de>
qdev: Don't assume existence of parent bus on unparenting
Commit 667d22d1ae59da46b4c1fbd094ca61145f19b8c3 (qdev: move bus removalto object_unparent) made the assumption that at unparenting timeparent_bus is not NULL. This assumption is unjustified since...
View all revisions | View revisions
Also available in: Atom