[PATCH v19 00/26] NXP DPAA driver enhancements and fixes
Stephen Hemminger
stephen at networkplumber.org
Fri Oct 2 18:17:55 CEST 2026
On Thu, 1 Oct 2026 16:54:04 +0530
Hemant Agrawal <hemant.agrawal at nxp.com> wrote:
> This series collects a set of fixes and enhancements for the NXP DPAA
> bus, mempool, dma, crypto and net drivers targeting 26.11.
>
> It includes memory-leak and resource-cleanup fixes on the device
> remove/close paths, more robust frame queue and congestion-group
> shutdown, secondary-process safety guards, BPID and cgrid lifecycle
> handling, and several new features: offline (O/H) port device support,
> enhanced virtual storage profile (VSP) port support, fmcless Rx queue
> configuration via devargs, Rx/Tx taildrop threshold devargs, non
> fmX-macY shared Ethernet naming, and DMA scatter-gather and
> errata-workaround devargs. Documentation and release notes are updated
> accordingly.
>
> v19:
> addressed AI review comments
No blockers, but there are still some things which are worth addressing.
I demangled what AI was trying to say but still seems confuzuled
Patch 10/26: The new qman_pending_fq_by_cgrid_range() can check a
whole range of CGRIDs in one scan of the FQID space, but the series
never uses it that way.
dpaa_eth_dev_close() loops over every Rx and Tx CGR and calls
dpaa_cgr_stale_fq_cleanup() for each one. That calls
qman_pending_fq_by_cgrid(), which is the range function with a
range of one CGRID. So closing a port still scans the full FQID
space nb_rx_queues + MAX_DPAA_CORES times.
The Rx CGRIDs are contiguous, and so are the Tx CGRIDs; close
already releases them with qman_release_cgrid_range(). Make
dpaa_cgr_stale_fq_cleanup() take a CGRID range, call it once for
the Rx set and once for the Tx set, then delete the CGRs. If that
is not wanted, drop qman_pending_fq_by_cgrid_range() and its
RTE_EXPORT_INTERNAL_SYMBOL, since nothing outside bus/dpaa uses it.
Patch 24/26 Symbol defined but never used.
$ git grep rte_dpaa_bus_oldev_enabled
drivers/bus/dpaa/bus_dpaa_driver.h:int rte_dpaa_bus_oldev_enabled(void);
drivers/bus/dpaa/dpaa_bus.c:RTE_EXPORT_INTERNAL_SYMBOL(rte_dpaa_bus_oldev_enabled)
drivers/bus/dpaa/dpaa_bus.c:rte_dpaa_bus_oldev_enabled(void)
* Missing doxygen
- rte_pmd_dpaa_oldev.h is not in doc/api/doxy-api-index.md.
3. New functions should be in release note.
Pre-existing, not introduced here: in dpaa_dev_init() the "FMC
initializes failed" path does goto free_rx without setting ret, so
probe can succeed with no Rx queues
More information about the dev
mailing list