i386/kvm: Fix build with -m32
find_next_bit() takes a pointer of type "const unsigned long *", but the first argument passed here is a "uint64_t *". These types are incompatible when compiling qemu with -m32. Just use ctz64() instead. Fixes: c686193072a47032d83cb4e131dc49ae30f9e5d Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> Message-Id: <20190624193913.28343-1-mreitz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
c20b139620
commit
9dc83cd9c3
@ -1043,14 +1043,15 @@ static int hv_cpuid_check_and_set(CPUState *cs, struct kvm_cpuid2 *cpuid,
|
|||||||
CPUX86State *env = &cpu->env;
|
CPUX86State *env = &cpu->env;
|
||||||
uint32_t r, fw, bits;
|
uint32_t r, fw, bits;
|
||||||
uint64_t deps;
|
uint64_t deps;
|
||||||
int i, dep_feat = 0;
|
int i, dep_feat;
|
||||||
|
|
||||||
if (!hyperv_feat_enabled(cpu, feature) && !cpu->hyperv_passthrough) {
|
if (!hyperv_feat_enabled(cpu, feature) && !cpu->hyperv_passthrough) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
deps = kvm_hyperv_properties[feature].dependencies;
|
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))) {
|
if (!(hyperv_feat_enabled(cpu, dep_feat))) {
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"Hyper-V %s requires Hyper-V %s\n",
|
"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);
|
kvm_hyperv_properties[dep_feat].desc);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
dep_feat++;
|
deps &= ~(1ull << dep_feat);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(kvm_hyperv_properties[feature].flags); i++) {
|
for (i = 0; i < ARRAY_SIZE(kvm_hyperv_properties[feature].flags); i++) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user