Commit dcf96f1f authored by Ajit Khaparde's avatar Ajit Khaparde Committed by David S. Miller

be2net: restrict WOL to PFs only.

WOL is not supported for Vrtual Functions.
Signed-off-by: default avatarAjit Khaparde <ajit.khaparde@emulex.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9b037f38
......@@ -516,12 +516,23 @@ be_phys_id(struct net_device *netdev, u32 data)
return status;
}
static bool
be_is_wol_supported(struct be_adapter *adapter)
{
if (!be_physfn(adapter))
return false;
else
return true;
}
static void
be_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
{
struct be_adapter *adapter = netdev_priv(netdev);
wol->supported = WAKE_MAGIC;
if (be_is_wol_supported(adapter))
wol->supported = WAKE_MAGIC;
if (adapter->wol)
wol->wolopts = WAKE_MAGIC;
else
......@@ -537,7 +548,7 @@ be_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
if (wol->wolopts & ~WAKE_MAGIC)
return -EINVAL;
if (wol->wolopts & WAKE_MAGIC)
if ((wol->wolopts & WAKE_MAGIC) && be_is_wol_supported(adapter))
adapter->wol = true;
else
adapter->wol = false;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment