Lines Matching defs:cpuid

4  * cpuid support routines
24 #include <asm/cpuid.h>
25 #include "cpuid.h"
195 struct kvm_hypervisor_cpuid cpuid = {};
210 cpuid.base = base;
211 cpuid.limit = entry->eax;
217 return cpuid;
243 * save the feature bitmap to avoid cpuid lookup for every PV
451 vcpu->arch.xen.cpuid = kvm_get_hypervisor_cpuid(vcpu, XEN_SIGNATURE);
459 struct kvm_cpuid *cpuid,
466 if (cpuid->nent > KVM_MAX_CPUID_ENTRIES)
469 if (cpuid->nent) {
470 e = vmemdup_user(entries, array_size(sizeof(*e), cpuid->nent));
474 e2 = kvmalloc_array(cpuid->nent, sizeof(*e2), GFP_KERNEL_ACCOUNT);
480 for (i = 0; i < cpuid->nent; i++) {
493 r = kvm_set_cpuid(vcpu, e2, cpuid->nent);
504 struct kvm_cpuid2 *cpuid,
510 if (cpuid->nent > KVM_MAX_CPUID_ENTRIES)
513 if (cpuid->nent) {
514 e2 = vmemdup_user(entries, array_size(sizeof(*e2), cpuid->nent));
519 r = kvm_set_cpuid(vcpu, e2, cpuid->nent);
527 struct kvm_cpuid2 *cpuid,
530 if (cpuid->nent < vcpu->arch.cpuid_nent)
537 cpuid->nent = vcpu->arch.cpuid_nent;
544 const struct cpuid_reg cpuid = x86_feature_cpuid(leaf * 32);
549 cpuid_count(cpuid.function, cpuid.index,
552 kvm_cpu_caps[leaf] &= *__cpuid_entry_get_reg(&entry, cpuid.reg);
1393 int kvm_dev_ioctl_get_cpuid(struct kvm_cpuid2 *cpuid,
1406 if (cpuid->nent < 1)
1408 if (cpuid->nent > KVM_MAX_CPUID_ENTRIES)
1409 cpuid->nent = KVM_MAX_CPUID_ENTRIES;
1411 if (sanity_check_entries(entries, cpuid->nent, type))
1414 array.entries = kvcalloc(cpuid->nent, sizeof(struct kvm_cpuid_entry2), GFP_KERNEL);
1418 array.maxnent = cpuid->nent;
1425 cpuid->nent = array.nent;