[PATCH net-next 6/8] net: ethernet: annapurna: add wol helpers to the Alpine driver
From: Sergei Shtylyov <hidden>
Date: 2017-02-06 12:02:52
Also in:
netdev
On 02/06/2017 02:35 PM, David Laight wrote:
quoted
quoted
Implement the get_wol() and set_wol() helpers in the Annapurna Labs Alpine Ethernet driver. --- drivers/net/ethernet/annapurna/al_eth.c | 44 +++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+)diff --git a/drivers/net/ethernet/annapurna/al_eth.c b/drivers/net/ethernet/annapurna/al_eth.c index 8dd84f66b5d1..d06a75a49ce5 100644 --- a/drivers/net/ethernet/annapurna/al_eth.c +++ b/drivers/net/ethernet/annapurna/al_eth.c@@ -2519,10 +2519,54 @@ static u32 al_eth_get_rxfh_indir_size(struct net_device *netdev) return AL_ETH_RX_RSS_TABLE_SIZE; } +static void al_eth_get_wol(struct net_device *netdev, + struct ethtool_wolinfo *wol) +{ + struct al_eth_adapter *adapter = netdev_priv(netdev); + struct phy_device *phydev; + + wol->wolopts = adapter->wol; + + if ((adapter) && (adapter->phy_exist) && (adapter->mdio_bus)) {Now that's somewhat stupid looking... does the whole driver use this "style"?Not only that, in one of the two functions it is followed by: + device_set_wakeup_enable(&adapter->pdev->dev, adapter->wol);
Which assumes that 'adapter' is not NULL. Some verifiers will detect that as a possible NULL pointer dereference.
I only meant unneeded parens. :-)
[...]
David
MBR, Sergei