[dpdk-stable] [PATCH 1/1] net/nfp: fix set_mac_addr
Pablo Cascón
pablo.cascon at netronome.com
Tue Mar 12 12:24:58 CET 2019
On 08/03/2019 15:40, Pablo Cascón wrote:
> Some firmwares, mostly for VFs, do not advertise the feature /
> capability of changing the MAC address while the interface is up. With
> such firmware a request to change the MAC address that at the same
> time also tries to enable the not available feature will be denied by
> the firmware resulting in an error message like:
>
> nfp_net_reconfig(): Error nfp_net reconfig for ctrl: 80000000 update: 800
>
> Fix set_mac_addr by not trying to enable a feature if it is not
> advertised by the firmware.
>
> Fixes: 2fe669f4bcd2 ("net/nfp: support MAC address change")
Sorry forgot to add here:
"Cc: stable at dpdk.org"
If needed please amend the commit message.
>
> Signed-off-by: Pablo Cascón <pablo.cascon at netronome.com>
> ---
> drivers/net/nfp/nfp_net.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
> index 54c6da9..278e154 100644
> --- a/drivers/net/nfp/nfp_net.c
> +++ b/drivers/net/nfp/nfp_net.c
> @@ -566,7 +566,10 @@ nfp_set_mac_addr(struct rte_eth_dev *dev, struct ether_addr *mac_addr)
>
> /* Signal the NIC about the change */
> update = NFP_NET_CFG_UPDATE_MACADDR;
> - ctrl = hw->ctrl | NFP_NET_CFG_CTRL_LIVE_ADDR;
> + ctrl = hw->ctrl;
> + if ((hw->ctrl & NFP_NET_CFG_CTRL_ENABLE) &&
> + (hw->cap & NFP_NET_CFG_CTRL_LIVE_ADDR))
> + ctrl |= NFP_NET_CFG_CTRL_LIVE_ADDR;
> if (nfp_net_reconfig(hw, ctrl, update) < 0) {
> PMD_INIT_LOG(INFO, "MAC address update failed");
> return -EIO;
More information about the stable
mailing list