Lines Matching refs:array
514 static struct kvm_cpuid_entry2 *do_host_cpuid(struct kvm_cpuid_array *array, in do_host_cpuid() argument
519 if (array->nent >= array->maxnent) in do_host_cpuid()
522 entry = &array->entries[array->nent++]; in do_host_cpuid()
551 static int __do_cpuid_func_emulated(struct kvm_cpuid_array *array, u32 func) in __do_cpuid_func_emulated() argument
555 if (array->nent >= array->maxnent) in __do_cpuid_func_emulated()
558 entry = &array->entries[array->nent]; in __do_cpuid_func_emulated()
566 ++array->nent; in __do_cpuid_func_emulated()
570 ++array->nent; in __do_cpuid_func_emulated()
576 ++array->nent; in __do_cpuid_func_emulated()
584 static inline int __do_cpuid_func(struct kvm_cpuid_array *array, u32 function) in __do_cpuid_func() argument
594 entry = do_host_cpuid(array, function, 0); in __do_cpuid_func()
633 entry = do_host_cpuid(array, function, i); in __do_cpuid_func()
653 entry = do_host_cpuid(array, function, 1); in __do_cpuid_func()
708 entry = do_host_cpuid(array, function, i); in __do_cpuid_func()
721 entry = do_host_cpuid(array, function, 1); in __do_cpuid_func()
745 entry = do_host_cpuid(array, function, i); in __do_cpuid_func()
758 --array->nent; in __do_cpuid_func()
772 if (!do_host_cpuid(array, function, i)) in __do_cpuid_func()
884 static int do_cpuid_func(struct kvm_cpuid_array *array, u32 func, in do_cpuid_func() argument
888 return __do_cpuid_func_emulated(array, func); in do_cpuid_func()
890 return __do_cpuid_func(array, func); in do_cpuid_func()
895 static int get_cpuid_func(struct kvm_cpuid_array *array, u32 func, in get_cpuid_func() argument
905 r = do_cpuid_func(array, func, type); in get_cpuid_func()
909 limit = array->entries[array->nent - 1].eax; in get_cpuid_func()
911 r = do_cpuid_func(array, func, type); in get_cpuid_func()
954 struct kvm_cpuid_array array = { in kvm_dev_ioctl_get_cpuid() local
967 array.entries = vzalloc(array_size(sizeof(struct kvm_cpuid_entry2), in kvm_dev_ioctl_get_cpuid()
969 if (!array.entries) in kvm_dev_ioctl_get_cpuid()
972 array.maxnent = cpuid->nent; in kvm_dev_ioctl_get_cpuid()
975 r = get_cpuid_func(&array, funcs[i], type); in kvm_dev_ioctl_get_cpuid()
979 cpuid->nent = array.nent; in kvm_dev_ioctl_get_cpuid()
981 if (copy_to_user(entries, array.entries, in kvm_dev_ioctl_get_cpuid()
982 array.nent * sizeof(struct kvm_cpuid_entry2))) in kvm_dev_ioctl_get_cpuid()
986 vfree(array.entries); in kvm_dev_ioctl_get_cpuid()