[PATCH 0/6] hw/riscv, target/riscv: implement initial N-Trace filtering

Konstantin Semichastnov posted 6 patches 1 week, 6 days ago
hw/riscv/trace-encoder.c                | 475 ++++++++++++++++++++++++++++++--
hw/riscv/trace-encoder.h                |  63 ++++-
target/riscv/cpu_helper.c               |   8 +-
target/riscv/helper.h                   |   1 +
target/riscv/insn_trans/trans_rvi.c.inc |   1 +
target/riscv/op_helper.c                |   8 +-
target/riscv/trace_helper.c             |  34 ++-
target/riscv/translate.c                |  10 +
8 files changed, 569 insertions(+), 31 deletions(-)
[PATCH 0/6] hw/riscv, target/riscv: implement initial N-Trace filtering
Posted by Konstantin Semichastnov 1 week, 6 days ago
Hi,

This series continues to implement RISC-V N-Trace subsystem.
This work implements initial instruction N-trace filtering from
RISC-V N-Trace (Nexus-based Trace) [1] and
RISC-V Trace Control Interface Specification [2]

This is the third patchset of several upcoming patchset series,
that will ultimately provide full support for N-Trace HTM tracing.

Patches based on N-Trace messages patchset [3],
which provides support for basic N-Trace messages.

[1] https://docs.riscv.org/reference/nexus-trace/_attachments/RISC-V-N-Trace.pdf
[2] https://docs.riscv.org/reference/trace-control-interface/_attachments/RISC-V-Trace-Control-Interface.pdf
[3] https://lore.kernel.org/qemu-devel/20260918-upstream-ntrace_msg-v1-0-16a56ad8e0ef@gmail.com/

Based-on: <20260918-upstream-ntrace_msg-v1-0-16a56ad8e0ef@gmail.com>

---
Konstantin Semichastnov (6):
      hw/riscv/trace-encoder.c: move trace_running setting location
      hw/riscv/trace-encoder.c: encapsulate icnt counting
      hw/riscv/ntrace: do not use gen_updiscon to gen IndirectBranch message
      hw/riscv/trace-encoder.c: add N-trace filtering definitions
      hw/riscv, target/riscv: support initial N-trace filtering
      hw/riscv/trace-encoder.c: emit PTC message when trace started disabled

 hw/riscv/trace-encoder.c                | 475 ++++++++++++++++++++++++++++++--
 hw/riscv/trace-encoder.h                |  63 ++++-
 target/riscv/cpu_helper.c               |   8 +-
 target/riscv/helper.h                   |   1 +
 target/riscv/insn_trans/trans_rvi.c.inc |   1 +
 target/riscv/op_helper.c                |   8 +-
 target/riscv/trace_helper.c             |  34 ++-
 target/riscv/translate.c                |  10 +
 8 files changed, 569 insertions(+), 31 deletions(-)
---
base-commit: 898044eefb4ad0904adca95c325ab7cca772320b
change-id: 20261009-upstream-ntrace_filter-c8e0af3a5dfa

Best regards,
--  
Konstantin Semichastnov <antikostya2@gmail.com>