Re: [PATCH v3 4/6] net/nfb: use process private variable for internal data

Stephen Hemminger
2026-01-20T00:14:01Z

On Fri, 16 Jan 2026 16:20:55 +0100
spinler@cesnet.cz wrote:

> From: Martin Spinler <spinler@cesnet.cz>
>
> Internal structures of libnfb can't be shared between processes.
> Move these structures from dev_private to process_private, which allows
> secondary process to correctly initialize and uninitialize the eth_dev.
>
> Signed-off-by: Martin Spinler <spinler@cesnet.cz>
> ---
> drivers/net/nfb/nfb.h | 2 +
> drivers/net/nfb/nfb_ethdev.c | 99 +++++++++++++++++++++---------------
> drivers/net/nfb/nfb_rx.c | 2 +-
> drivers/net/nfb/nfb_rxmode.c | 12 ++---
> drivers/net/nfb/nfb_tx.c | 2 +-
> 5 files changed, 67 insertions(+), 50 deletions(-)
>
> diff --git a/drivers/net/nfb/nfb.h b/drivers/net/nfb/nfb.h
> index 917b830283..09d4b7da5f 100644
> --- a/drivers/net/nfb/nfb.h
> +++ b/drivers/net/nfb/nfb.h
> @@ -48,7 +48,9 @@ struct pmd_internals {
> struct nc_rxmac *rxmac[RTE_MAX_NC_RXMAC];
> struct nc_txmac *txmac[RTE_MAX_NC_TXMAC];
> struct nfb_device *nfb;
> +};
>
> +struct pmd_priv {
> uint16_t max_rx_queues;
> uint16_t max_tx_queues;
> };

Where does max_rx_queues get populated in the secondary process?
What if either process calls configure to change number of queues?

Don't see other drivers splitting structure here.