[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c75d2cc2-e7f7-4de4-8d3d-81c3cf8ff973@quicinc.com>
Date: Wed, 23 Apr 2025 00:04:36 -0700
From: Trilok Soni <quic_tsoni@...cinc.com>
To: Eugen Hristev <eugen.hristev@...aro.org>, <linux-kernel@...r.kernel.org>,
<linux-arm-msm@...r.kernel.org>, <andersson@...nel.org>
CC: <linux-doc@...r.kernel.org>, <corbet@....net>, <tglx@...utronix.de>,
<mingo@...hat.com>, <rostedt@...dmis.org>, <john.ogness@...utronix.de>,
<senozhatsky@...omium.org>, <pmladek@...e.com>, <peterz@...radead.org>,
<mojha@....qualcomm.com>, <linux-arm-kernel@...ts.infradead.org>,
<vincent.guittot@...aro.org>, <konradybcio@...nel.org>,
<dietmar.eggemann@....com>, <juri.lelli@...hat.com>
Subject: Re: [RFC][PATCH 00/14] introduce kmemdump
On 4/22/2025 4:31 AM, Eugen Hristev wrote:
> kmemdump is a mechanism which allows the kernel to mark specific memory
> areas for dumping or specific backend usage.
> Once regions are marked, kmemdump keeps an internal list with the regions
> and registers them in the backend.
> Further, depending on the backend driver, these regions can be dumped using
> firmware or different hardware block.
> Regions being marked beforehand, when the system is up and running, there
> is no need nor dependency on a panic handler, or a working kernel that can
> dump the debug information.
> The kmemdump approach works when pstore, kdump, or another mechanism do not.
> Pstore relies on persistent storage, a dedicated RAM area or flash, which
> has the disadvantage of having the memory reserved all the time, or another
> specific non volatile memory. Some devices cannot keep the RAM contents on
> reboot so ramoops does not work. Some devices do not allow kexec to run
> another kernel to debug the crashed one.
> For such devices, that have another mechanism to help debugging, like
> firmware, kmemdump is a viable solution.
>
> kmemdump can create a core image, similar with /proc/vmcore, with only
> the registered regions included. This can be loaded into crash tool/gdb and
> analyzed.
> To have this working, specific information from the kernel is registered,
> and this is done at kmemdump init time, no need for the kmemdump user to
> do anything.
>
> The implementation is based on the initial Pstore/directly mapped zones
> published as an RFC here:
> https://lore.kernel.org/all/20250217101706.2104498-1-eugen.hristev@linaro.org/
>
> The back-end implementation for qcom_smem is based on the minidump
> patch series and driver written by Mukesh Ojha, thanks:
> https://lore.kernel.org/lkml/20240131110837.14218-1-quic_mojha@quicinc.com/
>
> I appreciate the feedback on this series, I know it is a longshot, and there
> is a lot to improve, but I hope I am on the right track.
Is there any way to demonstrate this framework on non-Qualcomm device? Like any
other ARM device from TI, NXP etc; x86/RISC-V based device is also fine.
--
---Trilok Soni
Powered by blists - more mailing lists