[dpdk-dev] [PATCH] net/af_xdp: fix xdp_get_channels_info return value

Ye Xiaolong xiaolong.ye at intel.com
Fri Jul 12 17:43:19 CEST 2019


Hi, 

Thanks for the patch.

On 07/12, Július Milan wrote:
>Procedure xdp_get_channels_info was returning error code -1 in case of
>ioctl command SIOCETHTOOL was not supported. This patch sets return
>value back to 0 as it is valid case.
>
>Fixes: 339b88c6a9 ("net/af_xdp: support multi-queue")
>
>Signed-off-by: Július Milan <jmilan.dev at gmail.com>
>---
> drivers/net/af_xdp/rte_eth_af_xdp.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
>diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c b/drivers/net/af_xdp/rte_eth_af_xdp.c
>index ff8e90589..33352e10a 100644
>--- a/drivers/net/af_xdp/rte_eth_af_xdp.c
>+++ b/drivers/net/af_xdp/rte_eth_af_xdp.c
>@@ -852,9 +852,13 @@ xdp_get_channels_info(const char *if_name, int *max_queues,
> 	ifr.ifr_data = (void *)&channels;
> 	strncpy(ifr.ifr_name, if_name, IFNAMSIZ);
> 	ret = ioctl(fd, SIOCETHTOOL, &ifr);
>-	if (ret && errno != EOPNOTSUPP) {
>-		ret = -errno;
>-		goto out;
>+	if (ret) {
>+		if (errno == EOPNOTSUPP) {
>+			ret = 0;
>+		} else {
>+			ret = -errno;
>+			goto out;
>+		}
> 	}
> 
> 	if (channels.max_combined == 0 || errno == EOPNOTSUPP) {
>-- 
>2.21.0
>

Reviewed-by: Xiaolong Ye <xiaolong.ye at intel.com>

Thanks,
Xiaolong


More information about the dev mailing list