summaryrefslogtreecommitdiff
path: root/fs/proc
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@kernel.org>2024-11-22 00:11:18 +0100
committerChristian Brauner <brauner@kernel.org>2024-11-22 12:08:43 +0100
commit088f294609d8f8816dc316681aef2eb61982e0da (patch)
treeef22c416de36c56d5b96a78c419a73466083fe63 /fs/proc
parent3e5360167ac3bccdc032cdafa68d4904a8fa0c75 (diff)
downloadlwn-088f294609d8f8816dc316681aef2eb61982e0da.tar.gz
lwn-088f294609d8f8816dc316681aef2eb61982e0da.zip
fs/proc/kcore.c: Clear ret value in read_kcore_iter after successful iov_iter_zero
If iov_iter_zero succeeds after failed copy_from_kernel_nofault, we need to reset the ret value to zero otherwise it will be returned as final return value of read_kcore_iter. This fixes objdump -d dump over /proc/kcore for me. Cc: stable@vger.kernel.org Cc: Alexander Gordeev <agordeev@linux.ibm.com> Fixes: 3d5854d75e31 ("fs/proc/kcore.c: allow translation of physical memory addresses") Signed-off-by: Jiri Olsa <jolsa@kernel.org> Link: https://lore.kernel.org/r/20241121231118.3212000-1-jolsa@kernel.org Acked-by: Alexander Gordeev <agordeev@linux.ibm.com> Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'fs/proc')
-rw-r--r--fs/proc/kcore.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c
index 51446c59388f..c82c408e573e 100644
--- a/fs/proc/kcore.c
+++ b/fs/proc/kcore.c
@@ -600,6 +600,7 @@ static ssize_t read_kcore_iter(struct kiocb *iocb, struct iov_iter *iter)
ret = -EFAULT;
goto out;
}
+ ret = 0;
/*
* We know the bounce buffer is safe to copy from, so
* use _copy_to_iter() directly.