mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: James Clark <james.clark@linaro.org>
To: Linu Cherian <lcherian@marvell.com>,
	suzuki.poulose@arm.com, mike.leach@linaro.org
Cc: linux-arm-kernel@lists.infradead.org, coresight@lists.linaro.org,
	linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
	robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
	corbet@lwn.net, devicetree@vger.kernel.org, sgoutham@marvell.com,
	gcherian@marvell.com
Subject: Re: [PATCH v13 0/8] Coresight for Kernel panic and watchdog reset
Date: Fri, 24 Jan 2025 12:08:58 +0000	[thread overview]
Message-ID: <da7dcddb-d407-41b2-8343-a0ec21914606@linaro.org> (raw)
In-Reply-To: <20241216053014.3427909-1-lcherian@marvell.com>



On 16/12/2024 5:30 am, Linu Cherian wrote:
> This patch series is rebased on coresight-next-v6.12.rc4
> 
> * Patches 1 & 2 adds support for allocation of trace buffer pages from
>    reserved RAM
> * Patches 3 & 4 adds support for saving metadata at the time of kernel panic
> * Patch 5 adds support for reading trace data captured at the time of panic
> * Patches 6 & 7 adds support for disabling coresight blocks at the time of panic
> * Patch 8: Gives the full description about this feature as part of documentation
> 
> v12 is posted here,
> https://lore.kernel.org/linux-arm-kernel/20241129084714.3057080-1-lcherian@marvell.com/
> 
> Changelog from v12:
> * Fixed wrong buffer pointer passed to coresigh_insert_barrier_packet
> * tmc_read_prepare/unprepare_crashdata need to be called only once and
>    hence removed from read path and added to tmc_probe
> * tmc_read_prepare_crashdata renamed to tmc_prepare_crashdata and
>    avoid taking locks  as its moved to probe function.
> * Introduced read status flag, "reading" specific to reserved buffer to keep the
>    reserved buffer reading independent of the regular buffer.
> * open/release ops for reserved buffer has to take care only about the
>    set/unset the "reading" status flag as the reserved buffer is prepared
>    during the probe time itself.
> * Few other trivial changes
> 

Hi Linu,

I tested that decoding a crash dump of ETM1 (trace ID 17) from panic 
kernel works:

   $ ./ptm2human -i cstrace.bin

   ...
   There is no valid data in the stream of ID 16
   Decode trace stream of ID 17
   Syncing the trace stream...
   Decoding the trace stream...
   instruction addr at 0x140c9afc, ARM state, secure state,
   ...

I noticed that once in the panic kernel Coresight becomes unusable, and 
the Perf Coresight tests fail, with no obvious way to reset it other 
than a cold boot:

  $ perf record -e cs_etm//u -- true
  $ perf report -D | grep AUX
  ...
  AUX data lost 27 times out of 27!
  ...

I didn't debug it yet. I thought it might be something to do with the 
RESRV buffer mode, but it doesn't look like that should be the case from 
the code. Perhaps its the claim tags and coresight_is_claimed_any() 
lingering, so it's not really an issue that's introduced by this change?

Thanks
James


  parent reply	other threads:[~2025-01-24 12:09 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-16  5:30 Linu Cherian
2024-12-16  5:30 ` [PATCH v13 1/8] dt-bindings: arm: coresight-tmc: Add "memory-region" property Linu Cherian
2024-12-16  5:30 ` [PATCH v13 2/8] coresight: tmc-etr: Add support to use reserved trace memory Linu Cherian
2024-12-16  5:30 ` [PATCH v13 3/8] coresight: core: Add provision for panic callbacks Linu Cherian
2024-12-16  5:30 ` [PATCH v13 4/8] coresight: tmc: Enable panic sync handling Linu Cherian
2024-12-16  5:30 ` [PATCH v13 5/8] coresight: tmc: Add support for reading crash data Linu Cherian
2025-01-21 14:56   ` Suzuki K Poulose
2025-02-04 11:57     ` Linu Cherian
2024-12-16  5:30 ` [PATCH v13 6/8] coresight: tmc: Stop trace capture on FlIn Linu Cherian
2024-12-16  5:30 ` [PATCH v13 7/8] coresight: config: Add preloaded configuration Linu Cherian
2024-12-16  5:30 ` [PATCH v13 8/8] Documentation: coresight: Panic support Linu Cherian
2025-01-15 10:20 ` [PATCH v13 0/8] Coresight for Kernel panic and watchdog reset Linu Cherian
2025-01-24 12:08 ` James Clark [this message]
2025-02-04 12:02   ` Linu Cherian
2025-02-11 10:41     ` James Clark

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=da7dcddb-d407-41b2-8343-a0ec21914606@linaro.org \
    --to=james.clark@linaro.org \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=coresight@lists.linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gcherian@marvell.com \
    --cc=krzk+dt@kernel.org \
    --cc=lcherian@marvell.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mike.leach@linaro.org \
    --cc=robh@kernel.org \
    --cc=sgoutham@marvell.com \
    --cc=suzuki.poulose@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®