eth: fbnic: fix s390 build.
authorPaolo Abeni <pabeni@redhat.com>
Wed, 17 Jul 2024 11:25:06 +0000 (13:25 +0200)
committerJakub Kicinski <kuba@kernel.org>
Wed, 17 Jul 2024 13:25:14 +0000 (06:25 -0700)
Building the fbnic nn s390, yield a build bug:

In function ‘fbnic_config_drop_mode_rcq’,
    inlined from ‘fbnic_enable’ at drivers/net/ethernet/meta/fbnic/fbnic_txrx.c:1836:4:
././include/linux/compiler_types.h:510:45: error: call to ‘__compiletime_assert_919’ declared with attribute error: FIELD_PREP: value too large for the field

The relevant mask is 9 bits wide, and the related value is the cacheline
aligned size of struct skb_shared_info.

On s390 the cacheline size is 256 bytes, and skb_shared_info minimum
size on 64 bits system is 320 bytes.

Avoid building the driver for such arch.

Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/202407170432.dYJQOWVz-lkp@intel.com/
Reported-by: Nathan Chancellor <nathan@kernel.org>
Fixes: 0cb4c0a13723 ("eth: fbnic: Implement Rx queue alloc/start/stop/free")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Link: https://patch.msgid.link/5dfefd3e90e77828f38e68854b171a5b8b8c6ede.1721215379.git.pabeni@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/meta/Kconfig

index d8f5e9f9bb335779f7435540fb9932198fd69fa0..a9f078212c783a2b44b60f0a51eb7d74b162caab 100644 (file)
@@ -20,6 +20,7 @@ if NET_VENDOR_META
 config FBNIC
        tristate "Meta Platforms Host Network Interface"
        depends on X86_64 || COMPILE_TEST
+       depends on S390=n
        depends on PCI_MSI
        select PHYLINK
        help