[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b152ec7c0e690027da1086b777a3ec512001ba1f.camel@linux.ibm.com>
Date: Tue, 17 Oct 2023 16:15:20 +0200
From: Gerd Bayer <gbayer@...ux.ibm.com>
To: Randy Dunlap <rdunlap@...radead.org>, wenjia@...ux.ibm.com
Cc: linux-kernel@...r.kernel.org, linux-next@...r.kernel.org,
netdev@...r.kernel.org, raspl@...ux.ibm.com, sfr@...b.auug.org.au,
alibuda@...ux.alibaba.com, wintera@...ux.ibm.com,
guwen@...ux.alibaba.com, tonylu@...ux.alibaba.com,
jaka@...ux.ibm.com
Subject: Re: [PATCH net] net/smc: Fix dependency of SMC on ISM
On Mon, 2023-10-16 at 16:09 -0700, Randy Dunlap wrote:
> 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@...radead.org>
> > Closes:
> > https://lore.kernel.org/linux-next/d53b5b50-d894-4df8-8969-fd39e63440ae@infradead.org/
> > Co-developed-by: Wenjia Zhang <wenjia@...ux.ibm.com>
> > Signed-off-by: Wenjia Zhang <wenjia@...ux.ibm.com>
> > Signed-off-by: Gerd Bayer <gbayer@...ux.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,
> | ^~~~~~~~~~~~~~
Hi Randy,
I must have missed testing a config of ISM without SMC. I'm working on
a fix.
Thanks for reporting,
Gerd
Powered by blists - more mailing lists