net/af_xdp: allow operation when multiprocess is disabled
PATCH 1/1 net/af_xdp: allow operation when multiprocess is disabled
If EAL multiprocess feature has been disabled via rte_mp_disable() function, AF_XDP driver may not be able to register its IPC callback. Previously this leads to probe failure.
This commit adds a check for this condition so that AF_XDP can still be used even if multiprocess is disabled.
--- drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/net/af_xdp/rte_eth_af_xdp.c +1 -1
@@ -1995,7 +1995,7 @@ rte_pmd_af_xdp_probe(struct rte_vdev_device *dev)/* Register IPC callback which shares xsk fds from primary to secondary */ if (!afxdp_dev_count) { ret =rte_mp_action_register (ETH_AF_XDP_MP_KEY , afxdp_mp_send_fds); -if (ret <0 ) { +if (ret <0 || rte_errno !=ENOTSUP ) {AF_XDP_LOG (ERR ,"%s: Failed to register multi-process IPC callback: %s" , name,strerror (rte_errno));return -1 ;
Signature · 1 line
2.17.1
PATCH v2 1/1 net/af_xdp: allow operation when multiprocess is disabled
If EAL multiprocess feature has been disabled via rte_mp_disable() function, AF_XDP driver may not be able to register its IPC callback. Previously this leads to probe failure.
This commit adds a check for this condition so that AF_XDP can still be used even if multiprocess is disabled.
--- drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/net/af_xdp/rte_eth_af_xdp.c +1 -1
@@ -1995,7 +1995,7 @@ rte_pmd_af_xdp_probe(struct rte_vdev_device *dev)/* Register IPC callback which shares xsk fds from primary to secondary */ if (!afxdp_dev_count) { ret =rte_mp_action_register (ETH_AF_XDP_MP_KEY , afxdp_mp_send_fds); -if (ret <0 ) { +if (ret <0 && rte_errno !=ENOTSUP ) {AF_XDP_LOG (ERR ,"%s: Failed to register multi-process IPC callback: %s" , name,strerror (rte_errno));return -1 ;
Signature · 1 line
2.17.1
Quoted 28 lines · Junxiao Shi
If EAL multiprocess feature has been disabled via
rte_mp_disable()function,AF_XDPdriver may not be able to register its IPC callback. Previously this leads to probe failure.
This commit adds a check for this condition so thatAF_XDPcan still be used even if multiprocess is disabled.Fixes 9876cf8316b3 ("net/af_xdp: re-enable secondary process support")Signed-off-by Junxiao Shi <[email protected]>--- drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/net/af_xdp/rte_eth_af_xdp.c +1
-2@@ -1995,7 +1995,7 @@ rte_pmd_af_xdp_probe(struct rte_vdev_device *dev)/* Register IPC callback which shares xsk fds from primary to secondary */ if (!afxdp_dev_count) { ret =rte_mp_action_register (ETH_AF_XDP_MP_KEY , afxdp_mp_send_fds); -if (ret <0 ) { +if (ret <0 && rte_errno !=ENOTSUP ) {AF_XDP_LOG (ERR ,"%s: Failed to register multi-process IPC callback: %s" , name,strerror (rte_errno));return -1 ; --
Quoted 2 lines
2.17.1
I just encountered the same issue.
Patch lgtm.
Signature · 1 line
David Marchand
Quoted 9 lines
Subject: [PATCH v2]
net/af_xdp: allow operation when multiprocess is disabledIf EAL multiprocess feature has been disabled via
rte_mp_disable()function,AF_XDPdriver may not be able to register its IPC callback. Previously this leads to probe failure.
This commit adds a check for this condition so thatAF_XDPcan still be used even if multiprocess is disabled.
Quoted 3 lines
Fixes 9876cf8316b3 ("net/af_xdp: re-enable secondary process support")Signed-off-by Junxiao Shi <[email protected]>
Thanks for the patch!
Quoted 24 lines
--- drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/net/af_xdp/rte_eth_af_xdp.c +0
-0@@ -1995,7 +1995,7 @@ rte_pmd_af_xdp_probe(struct rte_vdev_device *dev)/* Register IPC callback which shares xsk fds from primary to secondary */
drivers/net/af_xdp/rte_eth_af_xdp.c +0
-0if (!afxdp_dev_count) { ret = rte_mp_action_register(ETH_AF_XDP_MP_KEY,
afxdp_mp_send_fds);drivers/net/af_xdp/rte_eth_af_xdp.c +1
-1-if (ret <0 ) { +if (ret <0 && rte_errno !=ENOTSUP ) { AF_XDP_LOG(ERR, "%s: Failed to register multi-process IPC callback: %s",
drivers/net/af_xdp/rte_eth_af_xdp.c +0
-1name, strerror(rte_errno));return -1 ; --2.17.1
Ferruh Yigit
AppliedQuoted 9 lines · Ciara
Quoted 9 lines
Subject: [PATCH v2]
net/af_xdp: allow operation when multiprocess is disabledIf EAL multiprocess feature has been disabled via
rte_mp_disable()function,AF_XDPdriver may not be able to register its IPC callback. Previously this leads to probe failure.
This commit adds a check for this condition so thatAF_XDPcan still be used even if multiprocess is disabled.
Quoted 8 lines
Quoted 3 lines
Fixes 9876cf8316b3 ("net/af_xdp: re-enable secondary process support")Signed-off-by Junxiao Shi <[email protected]>Thanks for the patch!
Acked-by Ciara Loftus <[email protected]>
Applied to dpdk-next-net/main, thanks.