Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70abaded authored by Al Viro's avatar Al Viro
Browse files

powerpc kvm: use fdget



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 173c8401
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -823,39 +823,39 @@ static int kvm_vcpu_ioctl_enable_cap(struct kvm_vcpu *vcpu,
#endif
#ifdef CONFIG_KVM_MPIC
	case KVM_CAP_IRQ_MPIC: {
		struct file *filp;
		struct fd f;
		struct kvm_device *dev;

		r = -EBADF;
		filp = fget(cap->args[0]);
		if (!filp)
		f = fdget(cap->args[0]);
		if (!f.file)
			break;

		r = -EPERM;
		dev = kvm_device_from_filp(filp);
		dev = kvm_device_from_filp(f.file);
		if (dev)
			r = kvmppc_mpic_connect_vcpu(dev, vcpu, cap->args[1]);

		fput(filp);
		fdput(f);
		break;
	}
#endif
#ifdef CONFIG_KVM_XICS
	case KVM_CAP_IRQ_XICS: {
		struct file *filp;
		struct fd f;
		struct kvm_device *dev;

		r = -EBADF;
		filp = fget(cap->args[0]);
		if (!filp)
		f = fdget(cap->args[0]);
		if (!f.file)
			break;

		r = -EPERM;
		dev = kvm_device_from_filp(filp);
		dev = kvm_device_from_filp(f.file);
		if (dev)
			r = kvmppc_xics_connect_vcpu(dev, vcpu, cap->args[1]);

		fput(filp);
		fdput(f);
		break;
	}
#endif /* CONFIG_KVM_XICS */