diff options
author | Alexander Gordeev <agordeev@linux.ibm.com> | 2022-01-29 09:24:50 +0100 |
---|---|---|
committer | Vasily Gorbik <gor@linux.ibm.com> | 2022-02-09 22:56:04 +0100 |
commit | 303fd988ed644c7daa260410f3ac99266573557d (patch) | |
tree | e93519a8541e4300b55f52a3c320beac2f7214a6 /arch/s390/include/asm/os_info.h | |
parent | s390/dump: fix old lowcore virtual vs physical address confusion (diff) | |
download | linux-dev-303fd988ed644c7daa260410f3ac99266573557d.tar.xz linux-dev-303fd988ed644c7daa260410f3ac99266573557d.zip |
s390/maccess: fix semantics of memcpy_real() and its callers
There is a confusion with regard to the source address of
memcpy_real() and calling functions. While the declared
type for a source assumes a virtual address, in fact it
always called with physical address of the source.
This confusion led to bugs in copy_oldmem_kernel() and
copy_oldmem_user() functions, where __pa() macro applied
mistakenly to physical addresses. It does not lead to a
real issue, since virtual and physical addresses are
currently the same.
Fix both the bugs and memcpy_real() prototype by making
type of source address consistent to the function name
and the way it actually used.
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390/include/asm/os_info.h')
-rw-r--r-- | arch/s390/include/asm/os_info.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/include/asm/os_info.h b/arch/s390/include/asm/os_info.h index 3c89279d2a4b..147a8d547ef9 100644 --- a/arch/s390/include/asm/os_info.h +++ b/arch/s390/include/asm/os_info.h @@ -39,7 +39,7 @@ u32 os_info_csum(struct os_info *os_info); #ifdef CONFIG_CRASH_DUMP void *os_info_old_entry(int nr, unsigned long *size); -int copy_oldmem_kernel(void *dst, void *src, size_t count); +int copy_oldmem_kernel(void *dst, unsigned long src, size_t count); #else static inline void *os_info_old_entry(int nr, unsigned long *size) { |