On Mon, May 18, 2026 at 11:46:10PM -0700, Erni Sri Satya Vennela wrote: > Add debugfs entries to expose hardware configuration and diagnostic > information that aids in debugging driver initialization and runtime > operations without adding noise to dmesg. > > The debugfs directory for each PCI device is named using pci_name() > (the unique BDF address), and its creation and removal is integrated > into mana_gd_setup() and mana_gd_cleanup_device() respectively, so > that all callers (probe, remove, suspend, resume, shutdown) share a > single code path. > > Device-level entries (under /sys/kernel/debug/mana/<BDF>/): > - num_msix_usable, max_num_queues: Max resources from hardware > - gdma_protocol_ver, pf_cap_flags1: VF version negotiation results > - num_vports, bm_hostmode: Device configuration > > Per-vPort entries (under /sys/kernel/debug/mana/<BDF>/vportN/): > - port_handle: Hardware vPort handle > - max_sq, max_rq: Max queues from vPort config > - indir_table_sz: Indirection table size > - steer_rx, steer_rss, steer_update_tab, steer_cqe_coalescing: > Last applied steering configuration parameters > > Signed-off-by: Erni Sri Satya Vennela <[email protected]> > --- > Change in v9: > * Change steer_update_tab type from u32 to bool and use > debugfs_create_bool() accordingly > * Guard debugfs_lookup_and_remove() calls in mana_remove() with a > NULL check on gc->mana_pci_debugfs > * Fix mana_gd_resume() RDMA failure unwind: call mana_rdma_remove() > to undo partial RDMA state and return err, instead of > mana_remove(true) + mana_gd_cleanup_device(), avoiding a UAF > where gf_stats_work could fire against an already-destroyed HWC
Reviewed-by: Simon Horman <[email protected]>

