[PATCH 0/3] gpu: nova-core: add formatted trace events

Zhi Wang posted 3 patches 1 month, 4 weeks ago
drivers/gpu/Makefile               |   4 +-
drivers/gpu/nova-core/driver.rs    |   7 +-
drivers/gpu/nova-core/fsp.rs       |  16 ++-
drivers/gpu/nova-core/gsp/cmdq.rs  |  11 ++-
drivers/gpu/nova-core/nova_core.rs |   1 +
drivers/gpu/nova-core/trace.c      |   5 +
drivers/gpu/nova-core/trace.h      |  52 ++++++++++
drivers/gpu/nova-core/trace.rs     | 151 +++++++++++++++++++++++++++++
drivers/gpu/nova-core/vgpu.rs      |   5 +-
rust/bindings/bindings_helper.h    |   4 +
10 files changed, 245 insertions(+), 11 deletions(-)
create mode 100644 drivers/gpu/nova-core/trace.c
create mode 100644 drivers/gpu/nova-core/trace.h
create mode 100644 drivers/gpu/nova-core/trace.rs
[PATCH 0/3] gpu: nova-core: add formatted trace events
Posted by Zhi Wang 1 month, 4 weeks ago
Tracking driver and firmware activity is useful for debugging and bug
reports, e.g. GSP and FSP message sends and receives, vGPU states,
lifecycle events[1]. Trace events provide a low-overhead interface for
frequent diagnostics and allow each component stream to be enabled
independently.

This series adds a shared formatted event class and independent events for
general driver, FSP, GSP and vGPU messages. It replaces selected dev_dbg!()
calls with their corresponding trace events and adds FSP NVDM send and
receive records with the message type and length.

Use the module selector to enable the events before nova-core probes. With
tracefs mounted at /sys/kernel/tracing, run:

  cd /sys/kernel/tracing
  echo 'nova_core:*:mod:nova_core' > set_event
  echo 1 > tracing_on
  insmod /path/to/nova-core.ko
  cat trace

[1] https://github.com/zhiwang-nvidia/nova-core/tree/zhi/nova-gpu-wip-nova-gsp-20260803

Zhi Wang (3):
  gpu: nova-core: add formatted tracing
  gpu: nova-core: trace driver probe and firmware messages
  gpu: nova-core: trace vGPU state

 drivers/gpu/Makefile               |   4 +-
 drivers/gpu/nova-core/driver.rs    |   7 +-
 drivers/gpu/nova-core/fsp.rs       |  16 ++-
 drivers/gpu/nova-core/gsp/cmdq.rs  |  11 ++-
 drivers/gpu/nova-core/nova_core.rs |   1 +
 drivers/gpu/nova-core/trace.c      |   5 +
 drivers/gpu/nova-core/trace.h      |  52 ++++++++++
 drivers/gpu/nova-core/trace.rs     | 151 +++++++++++++++++++++++++++++
 drivers/gpu/nova-core/vgpu.rs      |   5 +-
 rust/bindings/bindings_helper.h    |   4 +
 10 files changed, 245 insertions(+), 11 deletions(-)
 create mode 100644 drivers/gpu/nova-core/trace.c
 create mode 100644 drivers/gpu/nova-core/trace.h
 create mode 100644 drivers/gpu/nova-core/trace.rs


base-commit: 44e7e7f7cffb10a93bb88e7cb59b7b8b3e2deb1c
-- 
2.53.0