s390/mm: use call_on_stack() macro
authorHeiko Carstens <hca@linux.ibm.com>
Mon, 5 Jul 2021 18:16:18 +0000 (20:16 +0200)
committerVasily Gorbik <gor@linux.ibm.com>
Thu, 8 Jul 2021 20:12:18 +0000 (22:12 +0200)
Reviewed-by: Sven Schnelle <svens@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/mm/maccess.c

index 1f1f906..a0f54bd 100644 (file)
@@ -125,12 +125,18 @@ static unsigned long __no_sanitize_address _memcpy_real(unsigned long dest,
  */
 int memcpy_real(void *dest, void *src, size_t count)
 {
+       unsigned long _dest  = (unsigned long)dest;
+       unsigned long _src   = (unsigned long)src;
+       unsigned long _count = (unsigned long)count;
        int rc;
 
        if (S390_lowcore.nodat_stack != 0) {
                preempt_disable();
-               rc = CALL_ON_STACK(_memcpy_real, S390_lowcore.nodat_stack, 3,
-                                  dest, src, count);
+               rc = call_on_stack(3, S390_lowcore.nodat_stack,
+                                  unsigned long, _memcpy_real,
+                                  unsigned long, _dest,
+                                  unsigned long, _src,
+                                  unsigned long, _count);
                preempt_enable();
                return rc;
        }
@@ -139,8 +145,7 @@ int memcpy_real(void *dest, void *src, size_t count)
         * not set up yet. Just call _memcpy_real on the early boot
         * stack
         */
-       return _memcpy_real((unsigned long) dest,(unsigned long) src,
-                           (unsigned long) count);
+       return _memcpy_real(_dest, _src, _count);
 }
 
 /*