Tidy-up vgic_get_common_attr() and vgic_set_common_attr() to use
{get,put}_user() instead of the more complex (and less type-safe)
copy_{from,to}_user().

Signed-off-by: Marc Zyngier <m...@kernel.org>
---
 arch/arm64/kvm/vgic/vgic-kvm-device.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/kvm/vgic/vgic-kvm-device.c 
b/arch/arm64/kvm/vgic/vgic-kvm-device.c
index ddead333c232..fbbd0338c782 100644
--- a/arch/arm64/kvm/vgic/vgic-kvm-device.c
+++ b/arch/arm64/kvm/vgic/vgic-kvm-device.c
@@ -170,7 +170,7 @@ static int vgic_set_common_attr(struct kvm_device *dev,
                u64 addr;
                unsigned long type = (unsigned long)attr->attr;
 
-               if (copy_from_user(&addr, uaddr, sizeof(addr)))
+               if (get_user(addr, uaddr))
                        return -EFAULT;
 
                r = kvm_vgic_addr(dev->kvm, type, &addr, true);
@@ -233,14 +233,14 @@ static int vgic_get_common_attr(struct kvm_device *dev,
                u64 addr;
                unsigned long type = (unsigned long)attr->attr;
 
-               if (copy_from_user(&addr, uaddr, sizeof(addr)))
+               if (get_user(addr, uaddr))
                        return -EFAULT;
 
                r = kvm_vgic_addr(dev->kvm, type, &addr, false);
                if (r)
                        return (r == -ENODEV) ? -ENXIO : r;
 
-               if (copy_to_user(uaddr, &addr, sizeof(addr)))
+               if (put_user(addr, uaddr))
                        return -EFAULT;
                break;
        }
-- 
2.34.1

_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

Reply via email to