KVM: Add a comment describing the /dev/kvm no_compat handling
Add a comment explaining the rational behind having both no_compat open and ioctl callbacks to fend off compat tasks. Signed-off-by: Marc Zyngier <maz@kernel.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>alistair/sunxi64-5.4-dsi
parent
ed69a6cb70
commit
9cb09e7c1c
|
@ -122,6 +122,13 @@ static long kvm_vcpu_compat_ioctl(struct file *file, unsigned int ioctl,
|
||||||
unsigned long arg);
|
unsigned long arg);
|
||||||
#define KVM_COMPAT(c) .compat_ioctl = (c)
|
#define KVM_COMPAT(c) .compat_ioctl = (c)
|
||||||
#else
|
#else
|
||||||
|
/*
|
||||||
|
* For architectures that don't implement a compat infrastructure,
|
||||||
|
* adopt a double line of defense:
|
||||||
|
* - Prevent a compat task from opening /dev/kvm
|
||||||
|
* - If the open has been done by a 64bit task, and the KVM fd
|
||||||
|
* passed to a compat task, let the ioctls fail.
|
||||||
|
*/
|
||||||
static long kvm_no_compat_ioctl(struct file *file, unsigned int ioctl,
|
static long kvm_no_compat_ioctl(struct file *file, unsigned int ioctl,
|
||||||
unsigned long arg) { return -EINVAL; }
|
unsigned long arg) { return -EINVAL; }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue