Blob Blame History Raw
From: Alexander Gordeev <agordeev@linux.ibm.com>
Date: Thu, 9 Jun 2022 21:32:39 +0200
Subject: s390/crash: make copy_oldmem_page() return number of bytes copied
Git-commit: af2debd58bd769e38f538143f0d332e15d753396
Patch-mainline: v5.19-rc4
References: git-fixes

Callback copy_oldmem_page() returns either error code or zero.
Instead, it should return the error code or number of bytes copied.

Fixes: df9694c7975f ("s390/dump: streamline oldmem copy functions")
Reviewed-by: Alexander Egorenkov <egorenar@linux.ibm.com>
Tested-by: Alexander Egorenkov <egorenar@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
[ ptesarik: This patch has been rewritten, because of missing
  commit 5d8de293c224896a4da99763fce4f9794308caf4 and a follow-up fix
  commit cc02e6e21aa5f2ac0defe8c15e5a9d024da6e73d ]
Signed-off-by: Petr Tesarik <ptesarik@suse.com>
---
 arch/s390/kernel/crash_dump.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

--- a/arch/s390/kernel/crash_dump.c
+++ b/arch/s390/kernel/crash_dump.c
@@ -224,7 +224,9 @@ ssize_t copy_oldmem_page(unsigned long p
 		rc = copy_oldmem_user((void __force __user *) buf, src, csize);
 	else
 		rc = copy_oldmem_kernel((void *) buf, src, csize);
-	return rc;
+	if (rc < 0)
+		return rc;
+	return csize;
 }
 
 /*