Re: [PATCH] s390/net: lcs: fix build errors when FDDI is a loadable module

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 21.06.23 23:37, Randy Dunlap wrote:
> Require FDDI to be built-in if it is used. LCS needs FDDI to be
> built-in to build without errors.
> 
> Prevents these build errors:
> s390-linux-ld: drivers/s390/net/lcs.o: in function `lcs_new_device':
> drivers/s390/net/lcs.c:2150: undefined reference to `fddi_type_trans'
> s390-linux-ld: drivers/s390/net/lcs.c:2151: undefined reference to `alloc_fddidev'
> 
> This FDDI requirement effectively restores the previous condition
> before the blamed patch, when #ifdef CONFIG_FDDI was used, without
> testing for CONFIG_FDDI_MODULE.
> 
> Fixes: 128272336120 ("s390/net: lcs: use IS_ENABLED() for kconfig detection")
> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Link: lore.kernel.org/r/202306202129.pl0AqK8G-lkp@xxxxxxxxx
> Suggested-by: Simon Horman <simon.horman@xxxxxxxxxxxx>
> Cc: Alexandra Winter <wintera@xxxxxxxxxxxxx>
> Cc: Wenjia Zhang <wenjia@xxxxxxxxxxxxx>
> Cc: linux-s390@xxxxxxxxxxxxxxx
> Cc: netdev@xxxxxxxxxxxxxxx
> Cc: Heiko Carstens <hca@xxxxxxxxxxxxx>
> Cc: Vasily Gorbik <gor@xxxxxxxxxxxxx>
> Cc: Alexander Gordeev <agordeev@xxxxxxxxxxxxx>
> Cc: Christian Borntraeger <borntraeger@xxxxxxxxxxxxx>
> Cc: Sven Schnelle <svens@xxxxxxxxxxxxx>
> Cc: David S. Miller <davem@xxxxxxxxxxxxx>
> Cc: Eric Dumazet <edumazet@xxxxxxxxxx>
> Cc: Jakub Kicinski <kuba@xxxxxxxxxx>
> Cc: Paolo Abeni <pabeni@xxxxxxxxxx>
> ---
>  drivers/s390/net/Kconfig |    2 ++
>  1 file changed, 2 insertions(+)
> 
> diff -- a/drivers/s390/net/Kconfig b/drivers/s390/net/Kconfig
> --- a/drivers/s390/net/Kconfig
> +++ b/drivers/s390/net/Kconfig
> @@ -6,11 +6,13 @@ config LCS
>  	def_tristate m
>  	prompt "Lan Channel Station Interface"
>  	depends on CCW && NETDEVICES && (ETHERNET || FDDI)
> +	depends on FDDI=y || FDDI=n
>  	help
>  	  Select this option if you want to use LCS networking on IBM System z.
>  	  This device driver supports FDDI (IEEE 802.7) and Ethernet.
>  	  To compile as a module, choose M. The module name is lcs.
>  	  If you do not know what it is, it's safe to choose Y.
> +	  If FDDI is used, it must be built-in (=y).
>  
>  config CTCM
>  	def_tristate m
> 


Wow Randy and Simon, you are reacting faster than I was able to evaluate this yesterday.
2 thoughts:

1) As ETHERNET cannot be a module and this patch prevents FDDI from being a module, then 
128272336120 ("s390/net: lcs: use IS_ENABLED() for kconfig detection")
is kind of pointless and can as well be reverted instead of doing this fix.
Or am I missing something?

2) I wonder whether

  	depends on CCW && NETDEVICES && (ETHERNET || FDDI)
 +	depends on FDDI || FDDI=n

would do what we want here:
When FDDI is a loadable module, LCS mustn't be built-in.

I will do some experiments and let you know.

Alexandra






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux