Re: [PATCH] iw_cxgb4: add INFINIBAND_ADDR_TRANS dependency

From: Doug Ledford
Date: Thu May 31 2018 - 14:42:08 EST


On Wed, 2018-05-30 at 21:03 -0700, Greg Thelen wrote:
> On Wed, May 30, 2018 at 4:01 PM Jason Gunthorpe <jgg@xxxxxxxx> wrote:
>
> > On Thu, May 31, 2018 at 12:40:54AM +0200, Arnd Bergmann wrote:
> > > > On 5/30/2018 5:25 PM, Jason Gunthorpe wrote:
> > > > > On Wed, May 30, 2018 at 05:10:35PM -0500, Steve Wise wrote:
> > > > > >
> > > > > > On 5/30/2018 5:04 PM, Jason Gunthorpe wrote:
> > > > > > > On Wed, May 30, 2018 at 11:58:18PM +0200, Arnd Bergmann wrote:
> > > > > > > > The newly added fill_res_ep_entry function fails to link if
> > > > > > > > CONFIG_INFINIBAND_ADDR_TRANS is not set:
> > > > > > > >
> > > > > > > > drivers/infiniband/hw/cxgb4/restrack.o: In function
>
> `fill_res_ep_entry':
> > > > > > > > restrack.c:(.text+0x3cc): undefined reference to `rdma_res_to_id'
> > > > > > > > restrack.c:(.text+0x3d0): undefined reference to `rdma_iw_cm_id'
> > > > > > > >
> > > > > > > > This adds a Kconfig dependency for the driver.
> > > > > > > >
> > > > > > > > Fixes: 116aeb887371 ("iw_cxgb4: provide detailed
>
> provider-specific CM_ID information")
> > > > > > > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> > > > > > > > drivers/infiniband/hw/cxgb4/Kconfig | 1 +
> > > > > > > > 1 file changed, 1 insertion(+)
> > > > > > >
> > > > > > > Oh, I think we need to solve this with maybe a header fill null
>
> stub
> > > > > > > instead..
> > > > > > >
> > > > > > > We don't want to disable drivers just because a user interface is
> > > > > > > disabled.
> > > > > > >
> > > > > >
> > > > > > Why does CONFIG_INFINIBAND_ADDR_TRANS disable building rdma_cm.ko?
>
> That
> > > > > > is not correct.
> > > > >
> > > > > That seems like a reasonable thing to do..
> > > >
> > > > rdma_ucm.ko is for usermode users, rdma_cm.ko is for kernel users, and
> > > > is required for iwarp drivers. It seems rdma_cm.ko is not being
> > > > compiled if ADDR_TRANS is not set.
> > I think the intention was to completely disable rdma-cm, including all
> > support for rx'ing remote packets? Greg?
>
> Yes. That's my goal when INFINIBAND_ADDR_TRANS is unset.
>
> > If this is required for iwarp then Arnd's patch is probably the right
> > way to go..
> > Jason
>
> Agreed.
> Acked-by: Greg Thelen <gthelen@xxxxxxxxxx>

If that's the case, then there should be a NOTE: in the Kconfig that
disabling the connection manager completely disables iWARP hardware.

I don't really think I like this approach though. At a minimum if you
are going to make iWARP totally dependent on rdmacm, then there is zero
reason that iw_cm.o should be part of the obj-$(CONFIG_INFINIBAND)
Makefile recipe when ADDR_TRANS is disabled.

We can take this patch as a band-aid, but IMO it's either incomplete or
simply not the right solution.

--
Doug Ledford <dledford@xxxxxxxxxx>
GPG KeyID: B826A3330E572FDD
Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD

Attachment: signature.asc
Description: This is a digitally signed message part