mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Randy Dunlap <rdunlap@infradead.org>
To: Gerd Bayer <gbayer@linux.ibm.com>, wenjia@linux.ibm.com
Cc: linux-kernel@vger.kernel.org, linux-next@vger.kernel.org,
	netdev@vger.kernel.org, raspl@linux.ibm.com,
	sfr@canb.auug.org.au, alibuda@linux.alibaba.com,
	wintera@linux.ibm.com, guwen@linux.alibaba.com,
	tonylu@linux.alibaba.com, jaka@linux.ibm.com
Subject: Re: [PATCH net] net/smc: Fix dependency of SMC on ISM
Date: Mon, 16 Oct 2023 16:09:57 -0700	[thread overview]
Message-ID: <afd142a2-1fa0-46b9-8b2d-7652d41d3ab8@infradead.org> (raw)
In-Reply-To: <20231006125847.1517840-1-gbayer@linux.ibm.com>

Hi Gerd,

On 10/6/23 05:58, Gerd Bayer wrote:
> 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 <rdunlap@infradead.org>
> Closes: https://lore.kernel.org/linux-next/d53b5b50-d894-4df8-8969-fd39e63440ae@infradead.org/
> Co-developed-by: Wenjia Zhang <wenjia@linux.ibm.com>
> Signed-off-by: Wenjia Zhang <wenjia@linux.ibm.com>
> Signed-off-by: Gerd Bayer <gbayer@linux.ibm.com>

With this patch, ISM can be build without SMC being enabled.

This leads to some build warnings:

../drivers/s390/net/ism_drv.c:572:12: warning: 'ism_get_local_gid' defined but not used [-Wunused-function]
  572 | static u64 ism_get_local_gid(struct ism_dev *ism)
      |            ^~~~~~~~~~~~~~~~~
../drivers/s390/net/ism_drv.c:506:12: warning: 'ism_get_chid' defined but not used [-Wunused-function]
  506 | static u16 ism_get_chid(struct ism_dev *ism)
      |            ^~~~~~~~~~~~
../drivers/s390/net/ism_drv.c:432:12: warning: 'ism_signal_ieq' defined but not used [-Wunused-function]
  432 | static int ism_signal_ieq(struct ism_dev *ism, u64 rgid, u32 trigger_irq,
      |            ^~~~~~~~~~~~~~
../drivers/s390/net/ism_drv.c:292:12: warning: 'ism_query_rgid' defined but not used [-Wunused-function]
  292 | static int ism_query_rgid(struct ism_dev *ism, u64 rgid, u32 vid_valid,
      |            ^~~~~~~~~~~~~~

> ---
>  drivers/s390/net/Kconfig | 2 +-
>  net/smc/Kconfig          | 1 +
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> 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

-- 
~Randy

  parent reply	other threads:[~2023-10-16 23:10 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-03  3:33 linux-next: Tree for Oct 3 Stephen Rothwell
2023-10-04  1:08 ` linux-next: Tree for Oct 3 (net/smc/smc_ism.o) Randy Dunlap
2023-10-04 12:37   ` Wenjia Zhang
2023-10-06 12:58     ` [PATCH net] net/smc: Fix dependency of SMC on ISM Gerd Bayer
2023-10-06 14:48       ` Simon Horman
2023-10-06 20:05       ` Randy Dunlap
2023-10-10 10:20       ` patchwork-bot+netdevbpf
2023-10-16 23:09       ` Randy Dunlap [this message]
2023-10-17 14:15         ` Gerd Bayer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=afd142a2-1fa0-46b9-8b2d-7652d41d3ab8@infradead.org \
    --to=rdunlap@infradead.org \
    --cc=alibuda@linux.alibaba.com \
    --cc=gbayer@linux.ibm.com \
    --cc=guwen@linux.alibaba.com \
    --cc=jaka@linux.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=raspl@linux.ibm.com \
    --cc=sfr@canb.auug.org.au \
    --cc=tonylu@linux.alibaba.com \
    --cc=wenjia@linux.ibm.com \
    --cc=wintera@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®