Re: [PATCH net] octeontx2-af: fix CGX debugfs RVU AF PCI reference leaks
From: Simon Horman <horms@kernel.org>
Date: 2026-06-18 15:07:28
Also in:
lkml
On Wed, Jun 17, 2026 at 04:15:25PM +0530, Ratheesh Kannoth wrote:
CGX per-lmac debugfs seq readers obtained struct rvu via
pci_get_drvdata(pci_get_device(..., PCI_DEVID_OCTEONTX2_RVU_AF, ...)),
which leaks a PCI device reference on every read. Store rvu and the CGX
handle in debugfs inode private data when creating stats, mac_filter,
and fwdata files (one context per CGX), and use debugfs aux numbers for
fwdata so lmac_id matches the other CGX debugfs entries.
Fixes: f967488d095e ("octeontx2-af: Add per CGX port level NIX Rx/Tx counters")
Fixes: dbc52debf95f ("octeontx2-af: Debugfs support for DMAC filters")
Fixes: 49f02e6877d1 ("Octeontx2-af: Debugfs support for firmware data")
Cc: Linu Cherian <redacted>
Reported-by: Yuho Choi <redacted>
Signed-off-by: Ratheesh Kannoth <rkannoth@marvell.com>The nit below not withstanding this looks good to me. Reviewed-by: Simon Horman <horms@kernel.org>
quoted hunk ↗ jump to hunk
--- .../marvell/octeontx2/af/rvu_debugfs.c | 77 ++++++++++--------- 1 file changed, 42 insertions(+), 35 deletions(-)diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu_debugfs.c
...
quoted hunk ↗ jump to hunk
@@ -2831,18 +2839,14 @@ static void rvu_dbg_npa_init(struct rvu *rvu) static int cgx_print_stats(struct seq_file *s, int lmac_id) { + struct rvu_cgx_lmac_dbgfs_ctx *dctx = s->private; struct cgx_link_user_info linfo; struct mac_ops *mac_ops; - void *cgxd = s->private; + void *cgxd = dctx->cgxd; + struct rvu *rvu = dctx->rvu;
nit: It would be nice to preserve reverse xmas tree order - longest line to
shortest - for local variable declarations. Likewise elsewhere in this
patch.
u64 ucast, mcast, bcast; int stat = 0, err = 0; u64 tx_stat, rx_stat;
...