KVM: s390: return -EFAULT if copy_from_user() fails
authorDan Carpenter <dan.carpenter@oracle.com>
Sat, 3 May 2014 20:18:11 +0000 (23:18 +0300)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Tue, 6 May 2014 12:57:59 +0000 (14:57 +0200)
When copy_from_user() fails, this code returns the number of bytes
remaining instead of a negative error code.  The positive number is
returned to the user but otherwise it is harmless.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
arch/s390/kvm/guestdbg.c

index 757ccef..3e8d409 100644 (file)
@@ -223,9 +223,10 @@ int kvm_s390_import_bp_data(struct kvm_vcpu *vcpu,
                goto error;
        }
 
-       ret = copy_from_user(bp_data, dbg->arch.hw_bp, size);
-       if (ret)
+       if (copy_from_user(bp_data, dbg->arch.hw_bp, size)) {
+               ret = -EFAULT;
                goto error;
+       }
 
        for (i = 0; i < dbg->arch.nr_hw_bp; i++) {
                switch (bp_data[i].type) {