On 04/27/2018 10:13 AM, David Miller wrote:
> From: David Miller <[email protected]>
> Date: Fri, 27 Apr 2018 12:10:14 -0400 (EDT)
> 
>> Ugh, this breaks the allmodconfig build.
>>
>> You can't move interfaces to drivers/net/phy/phy.c which are
>> referenced in core networking like net/core/ethtool.c unless you make
>> PHYLIB 'bool' only.
>>
>> net/core/ethtool.o: In function `__ethtool_get_sset_count':
>> ethtool.c:(.text+0x1cd8): undefined reference to `phy_ethtool_get_sset_count'
>> net/core/ethtool.o: In function `dev_ethtool':
>> (.text+0x5407): undefined reference to `phy_ethtool_get_strings'
>> (.text+0x6869): undefined reference to `phy_ethtool_get_sset_count'
>> (.text+0x69b3): undefined reference to `phy_ethtool_get_stats'
>>
>> Please fix this somehow, thanks Florian.
> 
> I'm applying this temporary fix to net-next so that I can get work
> down without having to revert all of your changes.

I forgot to put a static keyword in front of the functions declared
within the else part of the #IS_ENABLED(CONFIG_PHYLIB) in
include/linux/phy.h, will submit a fix for that immediately, *sigh*.

> 
> ====================
> [PATCH] phy: Temporary build fix after phylib changes.
> 
> Make PHYLIB boolean, because we reference phylib provided symbols now
> from net/core/ethtool.c and therefore 'm' doesn't work.
> 
> Signed-off-by: David S. Miller <[email protected]>
> ---
>  drivers/net/phy/Kconfig | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig
> index edb8b9ab827f..7c5e8c1e9370 100644
> --- a/drivers/net/phy/Kconfig
> +++ b/drivers/net/phy/Kconfig
> @@ -9,7 +9,6 @@ menuconfig MDIO_DEVICE
>  
>  config MDIO_BUS
>       tristate
> -     default m if PHYLIB=m
>       default MDIO_DEVICE
>       help
>         This internal symbol is used for link time dependencies and it
> @@ -171,7 +170,7 @@ config PHYLINK
>         autonegotiation modes.
>  
>  menuconfig PHYLIB
> -     tristate "PHY Device support and infrastructure"
> +     bool "PHY Device support and infrastructure"
>       depends on NETDEVICES
>       select MDIO_DEVICE
>       help
> 

-- 
Florian

Reply via email to