mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 10:13:56 -06:00
Bugfixes.
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQEcBAABAgAGBQJdH7FgAAoJEL/70l94x66DdUUH+gLr/ZdjLIdfYy9cjcnevf4E cJlxdaW9KvUsK2uVgqQ/3b1yF+GCGk10n6n8ZTIbClhs+6NpqEMz5O3FA/Na6FGA 48M2DwJaJ2H9AG/lQBlSBNUZfLsEJ9rWy7DHvNut5XMJFuWGwdtF/jRhUm3KqaRq vAaOgcQHbzHU9W8r1NJ7l6pnPebeO7S0JQV+82T/ITTz2gEBDUkJ36boO6fedkVQ jLb9nZyG3CJXHm2WlxGO4hkqbLFzURnCi6imOh2rMdD8BCu1eIVl59tD1lC/A0xv Pp3xXnv9SgJXsV4/I/N3/nU85ZhGVMPQZXkxaajHPtJJ0rQq7FAG8PJMEj9yPe8= =poke -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging Bugfixes. # gpg: Signature made Fri 05 Jul 2019 21:21:52 BST # gpg: using RSA key BFFBD25F78C7AE83 # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full] # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * remotes/bonzini/tags/for-upstream: ioapic: use irq number instead of vector in ioapic_eoi_broadcast hw/i386: Fix linker error when ISAPC is disabled Makefile: generate header file with the list of devices enabled target/i386: kvm: Fix when nested state is needed for migration minikconf: do not include variables from MINIKCONF_ARGS in config-all-devices.mak target/i386: fix feature check in hyperv-stub.c ioapic: clear irq_eoi when updating the ioapic redirect table entry intel_iommu: Fix unexpected unmaps during global unmap intel_iommu: Fix incorrect "end" for vtd_address_space_unmap i386/kvm: Fix build with -m32 checkpatch: do not warn for multiline parenthesized returned value pc: fix possible NULL pointer dereference in pc_machine_get_device_memory_region_size() Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
c4107e8208
9 changed files with 76 additions and 44 deletions
|
@ -1043,14 +1043,15 @@ static int hv_cpuid_check_and_set(CPUState *cs, struct kvm_cpuid2 *cpuid,
|
|||
CPUX86State *env = &cpu->env;
|
||||
uint32_t r, fw, bits;
|
||||
uint64_t deps;
|
||||
int i, dep_feat = 0;
|
||||
int i, dep_feat;
|
||||
|
||||
if (!hyperv_feat_enabled(cpu, feature) && !cpu->hyperv_passthrough) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
deps = kvm_hyperv_properties[feature].dependencies;
|
||||
while ((dep_feat = find_next_bit(&deps, 64, dep_feat)) < 64) {
|
||||
while (deps) {
|
||||
dep_feat = ctz64(deps);
|
||||
if (!(hyperv_feat_enabled(cpu, dep_feat))) {
|
||||
fprintf(stderr,
|
||||
"Hyper-V %s requires Hyper-V %s\n",
|
||||
|
@ -1058,7 +1059,7 @@ static int hv_cpuid_check_and_set(CPUState *cs, struct kvm_cpuid2 *cpuid,
|
|||
kvm_hyperv_properties[dep_feat].desc);
|
||||
return 1;
|
||||
}
|
||||
dep_feat++;
|
||||
deps &= ~(1ull << dep_feat);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(kvm_hyperv_properties[feature].flags); i++) {
|
||||
|
|
|
@ -997,9 +997,8 @@ static bool vmx_nested_state_needed(void *opaque)
|
|||
{
|
||||
struct kvm_nested_state *nested_state = opaque;
|
||||
|
||||
return ((nested_state->format == KVM_STATE_NESTED_FORMAT_VMX) &&
|
||||
((nested_state->hdr.vmx.vmxon_pa != -1ull) ||
|
||||
(nested_state->hdr.vmx.smm.flags & KVM_STATE_NESTED_SMM_VMXON)));
|
||||
return (nested_state->format == KVM_STATE_NESTED_FORMAT_VMX &&
|
||||
nested_state->hdr.vmx.vmxon_pa != -1ull);
|
||||
}
|
||||
|
||||
static const VMStateDescription vmstate_vmx_nested_state = {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue