From e9c51427febd306950eda778c0c75af5edc7b858 Mon Sep 17 00:00:00 2001 From: Ivan Vecera Date: Fri, 13 Jan 2017 22:38:28 +0100 Subject: [PATCH] be2net: don't delete MAC on close on unprivileged BE3 VFs Orabug: 25570957 BE3 VFs without FILTMGMT privilege are not allowed to modify its MAC, VLAN table and UC/MC lists. So don't try to delete MAC on such VFs. Cc: Sathya Perla Cc: Ajit Khaparde Cc: Sriharsha Basavapatna Cc: Somnath Kotur Signed-off-by: Ivan Vecera Signed-off-by: David S. Miller (cherry picked from commit 6d928ae590c8d58cfd5cca997d54394de139cbb7) Signed-off-by: Brian Maly Conflicts: drivers/net/ethernet/emulex/benet/be_main.c Signed-off-by: Dhaval Giani --- drivers/net/ethernet/emulex/benet/be_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c index fb7e64b8d854..f93e3a20d69e 100644 --- a/drivers/net/ethernet/emulex/benet/be_main.c +++ b/drivers/net/ethernet/emulex/benet/be_main.c @@ -3513,8 +3513,10 @@ static void be_rx_qs_destroy(struct be_adapter *adapter) static void be_disable_if_filters(struct be_adapter *adapter) { - be_cmd_pmac_del(adapter, adapter->if_handle, - adapter->pmac_id[0], 0); + if (!BEx_chip(adapter) || !be_virtfn(adapter) || + check_privilege(adapter, BE_PRIV_FILTMGMT)) + be_cmd_pmac_del(adapter, adapter->if_handle, + adapter->pmac_id[0], 0); be_clear_uc_list(adapter); be_clear_mc_list(adapter); -- 2.50.1