net/bonding: fix error code when creating bonded device
Checks
Commit Message
Because the return value of rte_vdev_init() has multiple non-zero values,
when rte_vdev_init() return non-zero in the rte_eth_bond_create() function,
it should return the actual error code rather than -ENOMEM.
Fixes: 68451eb6698c ("net/bonding: call through EAL on create/free")
Cc: stable@dpdk.org
Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
---
drivers/net/bonding/rte_eth_bond_api.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On 7/14/2020 9:19 AM, Wei Hu (Xavier) wrote:
> Because the return value of rte_vdev_init() has multiple non-zero values,
> when rte_vdev_init() return non-zero in the rte_eth_bond_create() function,
> it should return the actual error code rather than -ENOMEM.
>
> Fixes: 68451eb6698c ("net/bonding: call through EAL on create/free")
> Cc: stable@dpdk.org
>
> Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
Applied to dpdk-next-net/master, thanks.
@@ -167,7 +167,7 @@ rte_eth_bond_create(const char *name, uint8_t mode, uint8_t socket_id)
ret = rte_vdev_init(name, devargs);
if (ret)
- return -ENOMEM;
+ return ret;
ret = rte_eth_dev_get_port_by_name(name, &port_id);
RTE_ASSERT(!ret);