Lines Matching refs:adev

834 	struct kvm_assigned_dev_kernel *adev;  in kvm_vm_ioctl_set_msix_nr()  local
838 adev = kvm_find_assigned_dev(&kvm->arch.assigned_dev_head, in kvm_vm_ioctl_set_msix_nr()
840 if (!adev) { in kvm_vm_ioctl_set_msix_nr()
845 if (adev->entries_nr == 0) { in kvm_vm_ioctl_set_msix_nr()
846 adev->entries_nr = entry_nr->entry_nr; in kvm_vm_ioctl_set_msix_nr()
847 if (adev->entries_nr == 0 || in kvm_vm_ioctl_set_msix_nr()
848 adev->entries_nr > KVM_MAX_MSIX_PER_DEV) { in kvm_vm_ioctl_set_msix_nr()
853 adev->host_msix_entries = kzalloc(sizeof(struct msix_entry) * in kvm_vm_ioctl_set_msix_nr()
856 if (!adev->host_msix_entries) { in kvm_vm_ioctl_set_msix_nr()
860 adev->guest_msix_entries = in kvm_vm_ioctl_set_msix_nr()
863 if (!adev->guest_msix_entries) { in kvm_vm_ioctl_set_msix_nr()
864 kfree(adev->host_msix_entries); in kvm_vm_ioctl_set_msix_nr()
879 struct kvm_assigned_dev_kernel *adev; in kvm_vm_ioctl_set_msix_entry() local
883 adev = kvm_find_assigned_dev(&kvm->arch.assigned_dev_head, in kvm_vm_ioctl_set_msix_entry()
886 if (!adev) { in kvm_vm_ioctl_set_msix_entry()
891 for (i = 0; i < adev->entries_nr; i++) in kvm_vm_ioctl_set_msix_entry()
892 if (adev->guest_msix_entries[i].vector == 0 || in kvm_vm_ioctl_set_msix_entry()
893 adev->guest_msix_entries[i].entry == entry->entry) { in kvm_vm_ioctl_set_msix_entry()
894 adev->guest_msix_entries[i].entry = entry->entry; in kvm_vm_ioctl_set_msix_entry()
895 adev->guest_msix_entries[i].vector = entry->gsi; in kvm_vm_ioctl_set_msix_entry()
896 adev->host_msix_entries[i].entry = entry->entry; in kvm_vm_ioctl_set_msix_entry()
899 if (i == adev->entries_nr) { in kvm_vm_ioctl_set_msix_entry()