[PATCH 0/9] Add support for configure and control of Hardware Trace Macro(HTM)
Venkat Rao Bagalkote
venkat88 at linux.ibm.com
Fri Mar 21 00:13:50 AEDT 2025
On 14/03/25 7:25 pm, Athira Rajeev wrote:
> H_HTM (Hardware Trace Macro) hypervisor call is an HCALL to export
> data from Hardware Trace Macro (HTM) function. The debugfs interface
> to export the HTM function data in a partition currently supports only
> dumping of HTM data in an lpar. Patchset add support for configuration
> and control of HTM function via debugfs interface.
>
> With the patchset, after loading htmdump module,
> below files are present:
>
> ls /sys/kernel/debug/powerpc/htmdump/
> coreindexonchip htmcaps htmconfigure htmflags htminfo htmsetup
> htmstart htmstatus htmtype nodalchipindex nodeindex trace
>
> - nodeindex, nodalchipindex, coreindexonchip specifies which
> partition to configure the HTM for.
> - htmtype: specifies the type of HTM. Supported target is
> hardwareTarget.
> - trace: is to read the HTM data.
> - htmconfigure: Configure/Deconfigure the HTM. Writing 1 to
> the file will configure the trace, writing 0 to the file
> will do deconfigure.
> - htmstart: start/Stop the HTM. Writing 1 to the file will
> start the tracing, writing 0 to the file will stop the tracing.
> - htmstatus: get the status of HTM. This is needed to understand
> the HTM state after each operation.
> - htmsetup: set the HTM buffer size. Size of HTM buffer is in
> power of 2.
> - htminfo: provides the system processor configuration details.
> This is needed to understand the appropriate values for nodeindex,
> nodalchipindex, coreindexonchip.
> - htmcaps : provides the HTM capabilities like minimum/maximum buffer
> size, what kind of tracing the HTM supports etc.
> - htmflags : allows to pass flags to hcall. Currently supports
> controlling the wrapping of HTM buffer.
>
> Example usage:
> To collect HTM traces for a partition represented by nodeindex as
> zero, nodalchipindex as 1 and coreindexonchip as 12.
>
> # cd /sys/kernel/debug/powerpc/htmdump/
> # echo 2 > htmtype
> # echo 0 > nodeindex
> # echo 1 > nodalchipindex
> # echo 12 > coreindexonchip
> # echo 1 > htmflags # to set noWrap for HTM buffers
> # echo 1 > htmconfigure # Configure the HTM
> # echo 1 > htmstart # Start the HTM
> # echo 0 > htmstart # Stop the HTM
> # echo 0 > htmconfigure # Deconfigure the HTM
> # cat htmstatus # Dump the status of HTM entries as data
>
> Athira Rajeev (9):
> powerpc/pseries/htmdump: Add htm_hcall_wrapper to integrate other htm
> operations
> powerpc/pseries/htmdump: Add htm configure support to htmdump module
> powerpc/pseries/htmdump: Add htm start support to htmdump module
> powerpc/pseries/htmdump: Add htm status support to htmdump module
> powerpc/pseries/htmdump: Add htm info support to htmdump module
> powerpc/pseries/htmdump: Add htm setup support to htmdump module
> powerpc/pseries/htmdump: Add htm flags support to htmdump module
> powerpc/pseries/htmdump: Add htm capabilities support to htmdump
> module
> powerpc/pseries/htmdump: Add documentation for H_HTM debugfs interface
>
> Documentation/arch/powerpc/htm.rst | 104 ++++++
> arch/powerpc/include/asm/plpar_wrappers.h | 20 +-
> arch/powerpc/platforms/pseries/htmdump.c | 370 +++++++++++++++++++++-
> 3 files changed, 475 insertions(+), 19 deletions(-)
> create mode 100644 Documentation/arch/powerpc/htm.rst
>
Hello Athira,
I tried to apply this patch set on powerpc-next repo, but pacth 007
failed. Please refer the failure below.
Signed-off-by: Athira Rajeev <atrajeev at linux.ibm.com>
--------------------------
Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: a
Applying: powerpc/pseries/htmdump: Add htm_hcall_wrapper to integrate
other htm operations
Applying: powerpc/pseries/htmdump: Add htm configure support to htmdump
module
Applying: powerpc/pseries/htmdump: Add htm start support to htmdump module
Applying: powerpc/pseries/htmdump: Add htm status support to htmdump module
Applying: powerpc/pseries/htmdump: Add htm info support to htmdump module
Applying: powerpc/pseries/htmdump: Add htm setup support to htmdump module
Applying: powerpc/pseries/htmdump: Add htm flags support to htmdump module
error: patch failed: arch/powerpc/platforms/pseries/htmdump.c:180
error: arch/powerpc/platforms/pseries/htmdump.c: patch does not apply
Patch failed at 0007 powerpc/pseries/htmdump: Add htm flags support to
htmdump module
hint: Use 'git am --show-current-patch=diff' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Regards,
Venkat.
More information about the Linuxppc-dev
mailing list