diff options
author | Gerd Bayer <[email protected]> | 2023-10-06 14:58:47 +0200 |
---|---|---|
committer | Paolo Abeni <[email protected]> | 2023-10-10 11:51:41 +0200 |
commit | a72178cfe855c283224f393d94a1332b90d1483e (patch) | |
tree | 30fd4b5f39462ad7ad5f640e37f8b452b89db5b9 | |
parent | 7b5add9af567c44e12196107f0fe106e194034fd (diff) |
net/smc: Fix dependency of SMC on ISM
When the SMC protocol is built into the kernel proper while ISM is
configured to be built as module, linking the kernel fails due to
unresolved dependencies out of net/smc/smc_ism.o to
ism_get_smcd_ops, ism_register_client, and ism_unregister_client
as reported via the linux-next test automation (see link).
This however is a bug introduced a while ago.
Correct the dependency list in ISM's and SMC's Kconfig to reflect the
dependencies that are actually inverted. With this you cannot build a
kernel with CONFIG_SMC=y and CONFIG_ISM=m. Either ISM needs to be 'y',
too - or a 'n'. That way, SMC can still be configured on non-s390
architectures that do not have (nor need) an ISM driver.
Fixes: 89e7d2ba61b7 ("net/ism: Add new API for client registration")
Reported-by: Randy Dunlap <[email protected]>
Closes: https://lore.kernel.org/linux-next/[email protected]/
Co-developed-by: Wenjia Zhang <[email protected]>
Signed-off-by: Wenjia Zhang <[email protected]>
Signed-off-by: Gerd Bayer <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
Tested-by: Simon Horman <[email protected]> # build-tested
Acked-by: Randy Dunlap <[email protected]>
Tested-by: Randy Dunlap <[email protected]> # build-tested
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Abeni <[email protected]>
-rw-r--r-- | drivers/s390/net/Kconfig | 2 | ||||
-rw-r--r-- | net/smc/Kconfig | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/s390/net/Kconfig b/drivers/s390/net/Kconfig index 74760c1a163b..4902d45e929c 100644 --- a/drivers/s390/net/Kconfig +++ b/drivers/s390/net/Kconfig @@ -102,7 +102,7 @@ config CCWGROUP config ISM tristate "Support for ISM vPCI Adapter" - depends on PCI && SMC + depends on PCI default n help Select this option if you want to use the Internal Shared Memory diff --git a/net/smc/Kconfig b/net/smc/Kconfig index 1ab3c5a2c5ad..746be3996768 100644 --- a/net/smc/Kconfig +++ b/net/smc/Kconfig @@ -2,6 +2,7 @@ config SMC tristate "SMC socket protocol family" depends on INET && INFINIBAND + depends on m || ISM != m help SMC-R provides a "sockets over RDMA" solution making use of RDMA over Converged Ethernet (RoCE) technology to upgrade |