[PATCH] arm64: kdump: update ppos when reading elfcorehdr
Tyler Hicks
tyhicks at linux.microsoft.com
Fri Mar 19 21:07:00 GMT 2021
On 2021-03-19 16:50:54, Pavel Tatashin wrote:
> The ppos points to a position in the old kernel memory (and in case of
> arm64 in the crash kernel since elfcorehdr is passed as a segment). The
> function should update the ppos by the amount that was read. This bug is
> not exposed by accident, but other platforms update this value properly.
> So, fix it in ARM64 version of elfcorehdr_read() as well.
>
Fixes: e62aaeac426a ("arm64: kdump: provide /proc/vmcore file")
Reviewed-by: Tyler Hicks <tyhicks at linux.microsoft.com>
Tyler
> Signed-off-by: Pavel Tatashin <pasha.tatashin at soleen.com>
> ---
> arch/arm64/kernel/crash_dump.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm64/kernel/crash_dump.c b/arch/arm64/kernel/crash_dump.c
> index e6e284265f19..58303a9ec32c 100644
> --- a/arch/arm64/kernel/crash_dump.c
> +++ b/arch/arm64/kernel/crash_dump.c
> @@ -64,5 +64,7 @@ ssize_t copy_oldmem_page(unsigned long pfn, char *buf,
> ssize_t elfcorehdr_read(char *buf, size_t count, u64 *ppos)
> {
> memcpy(buf, phys_to_virt((phys_addr_t)*ppos), count);
> + *ppos += count;
> +
> return count;
> }
> --
> 2.25.1
>
More information about the linux-arm-kernel
mailing list