From: Ivan Vecera Date: Fri, 13 Jan 2017 21:38:28 +0000 (+0100) Subject: be2net: don't delete MAC on close on unprivileged BE3 VFs X-Git-Tag: v4.1.12-98.0.20170517_2143~42^2~9 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e9c51427febd306950eda778c0c75af5edc7b858;p=users%2Fjedix%2Flinux-maple.git 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 --- diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c index fb7e64b8d854a..f93e3a20d69eb 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);