Re: [PATCH net-next 05/10] net: phy: introduce a phy_driver macsec helper
From: Antoine Tenart <hidden>
Date: 2019-01-24 08:56:32
Also in:
lkml
From: Antoine Tenart <hidden>
Date: 2019-01-24 08:56:32
Also in:
lkml
Hi Andrew, On Wed, Jan 23, 2019 at 06:08:16PM +0100, Andrew Lunn wrote:
quoted
+int phy_macsec(struct phy_device *phydev, struct netdev_macsec *macsec) +{ + int ret = -EOPNOTSUPP; + + if (!phydev->drv) + return -EIO; + + mutex_lock(&phydev->lock); + + if (phydev->drv->macsec) + ret = phydev->drv->macsec(phydev, macsec); + + mutex_unlock(&phydev->lock); + return ret; +} +EXPORT_SYMBOL_GPL(phy_macsec); +quoted
@@ -630,6 +634,10 @@ struct phy_driver { struct ethtool_tunable *tuna, const void *data); int (*set_loopback)(struct phy_device *dev, bool enable); + +#ifdef CONFIG_MACSEC + int (*macsec)(struct phy_device *dev, struct netdev_macsec *macsec); +#endifSo the member only exists if CONFIG_MACSEC is defined. So i think you need similar protection in phy_macsec() or you are going to try to access a member which sometimes does not exist.
Right, I'll fix that and protect the phy_macsec definition within an '#ifdef CONFIG_MACSEC'. Thanks! Antoine -- Antoine Ténart, Bootlin Embedded Linux and Kernel engineering https://bootlin.com