[PATCH 18/23] net/nfp: add check for numbers of VF representor port
Chaoyong He
chaoyong.he at corigine.com
Wed Jun 19 11:58:25 CEST 2024
From: Peng Zhang <peng.zhang at corigine.com>
When the number of VF representor ports is bigger than
the number of VF ports, there will be segment fault.
Fix this by adding the check logic.
Fixes: e1124c4f8a45 ("net/nfp: add flower representor framework")
Cc: chaoyong.he at corigine.com
Cc: stable at dpdk.org
Signed-off-by: Peng Zhang <peng.zhang at corigine.com>
Reviewed-by: Chaoyong He <chaoyong.he at corigine.com>
Reviewed-by: Long Wu <long.wu at corigine.com>
---
drivers/net/nfp/flower/nfp_flower_representor.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/net/nfp/flower/nfp_flower_representor.c b/drivers/net/nfp/flower/nfp_flower_representor.c
index e6fef45ddd..086dbc58e3 100644
--- a/drivers/net/nfp/flower/nfp_flower_representor.c
+++ b/drivers/net/nfp/flower/nfp_flower_representor.c
@@ -959,6 +959,11 @@ nfp_flower_repr_create(struct nfp_app_fw_flower *app_fw_flower,
app_fw_flower->num_phyport_reprs = pf_dev->total_phyports;
app_fw_flower->num_vf_reprs = eth_da.nb_representor_ports -
pf_dev->total_phyports - 1;
+ if (pf_dev->max_vfs != 0 && pf_dev->sriov_vf < app_fw_flower->num_vf_reprs) {
+ PMD_INIT_LOG(ERR, "The VF repr nums %d is bigger than VF nums %d",
+ app_fw_flower->num_vf_reprs, pf_dev->sriov_vf);
+ return -ERANGE;
+ }
PMD_INIT_LOG(INFO, "%d number of VF reprs", app_fw_flower->num_vf_reprs);
PMD_INIT_LOG(INFO, "%d number of phyport reprs", app_fw_flower->num_phyport_reprs);
--
2.39.1
More information about the dev
mailing list