mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 22:21:40 +00:00
KVM: Clean up kvm_vm_ioctl_assigned_device
Any arch not supporting device assigment will also not build assigned-dev.c. So testing for KVM_CAP_DEVICE_DEASSIGNMENT is pointless. KVM_CAP_ASSIGN_DEV_IRQ is unconditinally set. Moreover, add a default case for dispatching the ioctl. Acked-by: Alex Williamson <alex.williamson@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
This commit is contained in:
parent
ed78661f26
commit
51de271d44
@ -674,7 +674,7 @@ long kvm_vm_ioctl_assigned_device(struct kvm *kvm, unsigned ioctl,
|
|||||||
unsigned long arg)
|
unsigned long arg)
|
||||||
{
|
{
|
||||||
void __user *argp = (void __user *)arg;
|
void __user *argp = (void __user *)arg;
|
||||||
int r = -ENOTTY;
|
int r;
|
||||||
|
|
||||||
switch (ioctl) {
|
switch (ioctl) {
|
||||||
case KVM_ASSIGN_PCI_DEVICE: {
|
case KVM_ASSIGN_PCI_DEVICE: {
|
||||||
@ -692,7 +692,6 @@ long kvm_vm_ioctl_assigned_device(struct kvm *kvm, unsigned ioctl,
|
|||||||
r = -EOPNOTSUPP;
|
r = -EOPNOTSUPP;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#ifdef KVM_CAP_ASSIGN_DEV_IRQ
|
|
||||||
case KVM_ASSIGN_DEV_IRQ: {
|
case KVM_ASSIGN_DEV_IRQ: {
|
||||||
struct kvm_assigned_irq assigned_irq;
|
struct kvm_assigned_irq assigned_irq;
|
||||||
|
|
||||||
@ -715,8 +714,6 @@ long kvm_vm_ioctl_assigned_device(struct kvm *kvm, unsigned ioctl,
|
|||||||
goto out;
|
goto out;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
#ifdef KVM_CAP_DEVICE_DEASSIGNMENT
|
|
||||||
case KVM_DEASSIGN_PCI_DEVICE: {
|
case KVM_DEASSIGN_PCI_DEVICE: {
|
||||||
struct kvm_assigned_pci_dev assigned_dev;
|
struct kvm_assigned_pci_dev assigned_dev;
|
||||||
|
|
||||||
@ -728,7 +725,6 @@ long kvm_vm_ioctl_assigned_device(struct kvm *kvm, unsigned ioctl,
|
|||||||
goto out;
|
goto out;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
#ifdef KVM_CAP_IRQ_ROUTING
|
#ifdef KVM_CAP_IRQ_ROUTING
|
||||||
case KVM_SET_GSI_ROUTING: {
|
case KVM_SET_GSI_ROUTING: {
|
||||||
struct kvm_irq_routing routing;
|
struct kvm_irq_routing routing;
|
||||||
@ -781,6 +777,9 @@ long kvm_vm_ioctl_assigned_device(struct kvm *kvm, unsigned ioctl,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
default:
|
||||||
|
r = -ENOTTY;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
out:
|
out:
|
||||||
return r;
|
return r;
|
||||||
|
Loading…
Reference in New Issue
Block a user