s390: Change s390_kernel_write() return type to match memcpy()
authorJosh Poimboeuf <jpoimboe@redhat.com>
Wed, 29 Apr 2020 15:24:47 +0000 (10:24 -0500)
committerJiri Kosina <jkosina@suse.cz>
Thu, 7 May 2020 22:12:43 +0000 (00:12 +0200)
s390_kernel_write()'s function type is almost identical to memcpy().
Change its return type to "void *" so they can be used interchangeably.

Cc: linux-s390@vger.kernel.org
Cc: heiko.carstens@de.ibm.com
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Acked-by: Joe Lawrence <joe.lawrence@redhat.com>
Acked-by: Miroslav Benes <mbenes@suse.cz>
Acked-by: Gerald Schaefer <gerald.schaefer@de.ibm.com> # s390
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
arch/s390/include/asm/uaccess.h
arch/s390/mm/maccess.c

index a470f1f..3244388 100644 (file)
@@ -276,6 +276,6 @@ static inline unsigned long __must_check clear_user(void __user *to, unsigned lo
 }
 
 int copy_to_user_real(void __user *dest, void *src, unsigned long count);
-void s390_kernel_write(void *dst, const void *src, size_t size);
+void *s390_kernel_write(void *dst, const void *src, size_t size);
 
 #endif /* __S390_UACCESS_H */
index de7ca4b..22a0be6 100644 (file)
@@ -55,19 +55,22 @@ static notrace long s390_kernel_write_odd(void *dst, const void *src, size_t siz
  */
 static DEFINE_SPINLOCK(s390_kernel_write_lock);
 
-void notrace s390_kernel_write(void *dst, const void *src, size_t size)
+notrace void *s390_kernel_write(void *dst, const void *src, size_t size)
 {
+       void *tmp = dst;
        unsigned long flags;
        long copied;
 
        spin_lock_irqsave(&s390_kernel_write_lock, flags);
        while (size) {
-               copied = s390_kernel_write_odd(dst, src, size);
-               dst += copied;
+               copied = s390_kernel_write_odd(tmp, src, size);
+               tmp += copied;
                src += copied;
                size -= copied;
        }
        spin_unlock_irqrestore(&s390_kernel_write_lock, flags);
+
+       return dst;
 }
 
 static int __no_sanitize_address __memcpy_real(void *dest, void *src, size_t count)