From: Kalesh AP Date: Tue, 21 Apr 2020 21:33:49 +0000 (-0700) Subject: net/bnxt: fix VLAN add when port is stopped X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=commitdiff_plain;h=8b60154d4b8a413eec43aafce1b4341dd575d4c3 net/bnxt: fix VLAN add when port is stopped Driver destroys the vnic when the port is brought down. When user tries to add a vlan when port is stopped, driver issues HWRM command to FW with invalid vnic_id and it fails. Fixed to return an error while setting vlan when port is not started. Fixes: b4e190d55c25 ("net/bnxt: fix MAC/VLAN filter allocation") Cc: stable@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Venkat Duvvuru Reviewed-by: Ajit Khaparde --- diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index 206111db5b..589190b372 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c @@ -2082,6 +2082,11 @@ static int bnxt_vlan_filter_set_op(struct rte_eth_dev *eth_dev, if (rc) return rc; + if (!eth_dev->data->dev_started) { + PMD_DRV_LOG(ERR, "port must be started before setting vlan\n"); + return -EINVAL; + } + /* These operations apply to ALL existing MAC/VLAN filters */ if (on) return bnxt_add_vlan_filter(bp, vlan_id);