[PATCH v9 0/8] net/nfb: rework to real multiport
Martin Spinler
spinler at cesnet.cz
Tue Feb 17 08:09:40 CET 2026
> After some feedback to the AI review. It still had minor feedback, do you want more detail?
> I can take this as is or you can send new version.
I think I can address only one warning from the AI review:
the propagated return value in Patch 4.
> Patch 2: If rte_eth_dev_create() succeeds but rte_eth_dev_get_by_name()
> returns NULL, the created device is never added to the cleanup TAILQ
> and leaks.
The rte_eth_dev_create() does not return rte_eth_dev*, so I don't have
a handle to cleanup something with rte_eth_dev_destroy().
The only solution that comes to my mind, is to add the rte_eth_dev
temporary handle to let say a second 'temporary' TAILQ list inside
nfb_eth_dev_init() (called in rte_eth_dev_create()), which will be
checked after the rte_eth_dev_create() returns. However, it's still
messy and doesn't solve the problem comprehensively.
> Patch 3: nfb_default_dev_path() return value used without NULL check before passing to nfb_open().
Both is fine (nfb_default_dev_path doesn't returns NULL, nfb_open can
handle NULL: calls nfb_default_dev_path() internally in that case).
> Patch 4: The kvargs callback returns errors from input validation (e.g., bad port string) but ifc_params.ret is only set after nfb_eth_dev_create_for_ifc, so the caller can overwrite the real error with 0.
Fixed in v10.
> Patch 8: Release notes don't mention the new vdev/simulation support from patch 3.
Quite a minor feature.
More information about the dev
mailing list