This patch fixes unknown parsing results in the absence of devarg "no-poll-on-link-down" and fixes the devarg variable type.
Fixes: 5b3124a0a6ef ("net/iavf: support no polling when link down") Fixes: 3e6a5d2d310a ("net/iavf: add devargs to enable VF auto-reset") Cc: sta...@dpdk.org Signed-off-by: Mingjin Ye <mingjinx...@intel.com> --- v2: fix devarg variable type. --- drivers/net/iavf/iavf.h | 4 ++-- drivers/net/iavf/iavf_ethdev.c | 7 +------ 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/drivers/net/iavf/iavf.h b/drivers/net/iavf/iavf.h index c115f3444e..10868f2c30 100644 --- a/drivers/net/iavf/iavf.h +++ b/drivers/net/iavf/iavf.h @@ -307,8 +307,8 @@ struct iavf_devargs { uint8_t proto_xtr[IAVF_MAX_QUEUE_NUM]; uint16_t quanta_size; uint32_t watchdog_period; - uint8_t auto_reset; - uint16_t no_poll_on_link_down; + int auto_reset; + int no_poll_on_link_down; }; struct iavf_security_ctx; diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c index 0c6ab4ac5a..d1edb0dd5c 100644 --- a/drivers/net/iavf/iavf_ethdev.c +++ b/drivers/net/iavf/iavf_ethdev.c @@ -2294,7 +2294,6 @@ static int iavf_parse_devargs(struct rte_eth_dev *dev) struct rte_kvargs *kvlist; int ret; int watchdog_period = -1; - uint16_t no_poll_on_link_down; if (!devargs) return 0; @@ -2329,13 +2328,9 @@ static int iavf_parse_devargs(struct rte_eth_dev *dev) ad->devargs.watchdog_period = watchdog_period; ret = rte_kvargs_process(kvlist, IAVF_NO_POLL_ON_LINK_DOWN_ARG, - &parse_u16, &no_poll_on_link_down); + &parse_bool, &ad->devargs.no_poll_on_link_down); if (ret) goto bail; - if (no_poll_on_link_down == 0) - ad->devargs.no_poll_on_link_down = 0; - else - ad->devargs.no_poll_on_link_down = 1; if (ad->devargs.quanta_size != 0 && (ad->devargs.quanta_size < 256 || ad->devargs.quanta_size > 4096 || -- 2.25.1