From: Jun Yang <[email protected]> Add qman_find_fq_by_cgid() to find frame queues associated with a given CGID. This allows the driver to verify that all FQs using a CGR are shut down before releasing the CGR ID, preventing use-after-free of CGR resources.
Signed-off-by: Jun Yang <[email protected]> Signed-off-by: Hemant Agrawal <[email protected]> --- drivers/bus/dpaa/dpaa_bus_base_symbols.c | 1 + drivers/bus/dpaa/include/fsl_qman.h | 3 +++ 2 files changed, 4 insertions(+) diff --git a/drivers/bus/dpaa/dpaa_bus_base_symbols.c b/drivers/bus/dpaa/dpaa_bus_base_symbols.c index bb308e0d61..02b245cd50 100644 --- a/drivers/bus/dpaa/dpaa_bus_base_symbols.c +++ b/drivers/bus/dpaa/dpaa_bus_base_symbols.c @@ -56,6 +56,7 @@ RTE_EXPORT_INTERNAL_SYMBOL(qman_alloc_pool_range) RTE_EXPORT_INTERNAL_SYMBOL(qman_alloc_cgrid_range) RTE_EXPORT_INTERNAL_SYMBOL(qman_release_cgrid_range) RTE_EXPORT_INTERNAL_SYMBOL(dpaa_get_qm_channel_pool_num) +RTE_EXPORT_INTERNAL_SYMBOL(qman_find_fq_by_cgrid) RTE_EXPORT_INTERNAL_SYMBOL(dpaa_intr_enable) RTE_EXPORT_INTERNAL_SYMBOL(dpaa_intr_disable) RTE_EXPORT_INTERNAL_SYMBOL(dpaa_get_ioctl_version_number) diff --git a/drivers/bus/dpaa/include/fsl_qman.h b/drivers/bus/dpaa/include/fsl_qman.h index bd46207232..20321ed355 100644 --- a/drivers/bus/dpaa/include/fsl_qman.h +++ b/drivers/bus/dpaa/include/fsl_qman.h @@ -1907,6 +1907,9 @@ static inline int qman_shutdown_fq_by_fqid(u32 fqid) return qman_shutdown_fq(&fq); } +__rte_internal +int qman_find_fq_by_cgrid(u32 cgrid, u32 *fqid); + /** * qman_reserve_fqid_range - Reserve the specified range of frame queue IDs * @fqid: the base FQID of the range to deallocate -- 2.25.1

