graph: add rte_node xstat collection support#540
graph: add rte_node xstat collection support#540christophefontaine merged 1 commit intoDPDK:mainfrom
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThis change introduces extended statistics (xstats) tracking to the node statistics system. A new maximum capacity constant limits xstats per node, and the node stats structure is extended with fields to store xstats values and their previous snapshots. Validation is added to reject nodes exceeding the xstats capacity. The stats collection and aggregation logic is expanded to compute per-xstat deltas, construct individual stat entries for each xstat, and aggregate them alongside base node statistics. A stub helper function is introduced to resolve node metadata during stats processing. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
DPDK graph nodes can declare custom counters (xstats) via the rte_node_register.xstats field. Wire them into grout's stats infrastructure so they appear alongside regular node stats. The datapath callback tracks xstat deltas using prev_xstats stored in node_stats, following the same pattern as packets/batches/cycles. Xstat descriptions are resolved from the node registration info in the control plane only, when dumping stats via worker_dump_stats(). Each xstat appears as a separate gr_stat entry named "node_name.xstat_desc". At startup, enforce that no node declares more xstats than GR_MAX_NODE_XSTATS. Signed-off-by: Robin Jarry <rjarry@redhat.com> Reviewed-by: Christophe Fontaine <cfontain@redhat.com>
DPDK graph nodes can declare custom counters (xstats) via the rte_node_register.xstats field. Wire them into grout's stats infrastructure so they appear alongside regular node stats.
The datapath callback tracks xstat deltas using prev_xstats stored in node_stats, following the same pattern as packets/batches/cycles. Xstat descriptions are resolved from the node registration info in the control plane only, when dumping stats via worker_dump_stats(). Each xstat appears as a separate gr_stat entry named "node_name.xstat_desc".
At startup, enforce that no node declares more xstats than GR_MAX_NODE_XSTATS.
Summary by CodeRabbit