[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200414152312.GF5100@ziepe.ca>
Date: Tue, 14 Apr 2020 12:23:12 -0300
From: Jason Gunthorpe <jgg@...pe.ca>
To: Arnd Bergmann <arnd@...db.de>
Cc: Saeed Mahameed <saeedm@...lanox.com>,
"narmstrong@...libre.com" <narmstrong@...libre.com>,
"masahiroy@...nel.org" <masahiroy@...nel.org>,
"Laurent.pinchart@...asonboard.com"
<Laurent.pinchart@...asonboard.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"leon@...nel.org" <leon@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"nico@...xnic.net" <nico@...xnic.net>,
"dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
"linux-renesas-soc@...r.kernel.org"
<linux-renesas-soc@...r.kernel.org>,
"kieran.bingham+renesas@...asonboard.com"
<kieran.bingham+renesas@...asonboard.com>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
"jani.nikula@...ux.intel.com" <jani.nikula@...ux.intel.com>,
"a.hajda@...sung.com" <a.hajda@...sung.com>,
"jonas@...boo.se" <jonas@...boo.se>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"airlied@...ux.ie" <airlied@...ux.ie>,
"jernej.skrabec@...l.net" <jernej.skrabec@...l.net>
Subject: Re: [RFC 0/6] Regressions for "imply" behavior change
On Tue, Apr 14, 2020 at 04:27:41PM +0200, Arnd Bergmann wrote:
> On Tue, Apr 14, 2020 at 3:29 PM Jason Gunthorpe <jgg@...pe.ca> wrote:
> > On Fri, Apr 10, 2020 at 07:04:27PM +0000, Saeed Mahameed wrote:
> > > On Fri, 2020-04-10 at 14:13 -0300, Jason Gunthorpe wrote:
> > > > On Fri, Apr 10, 2020 at 02:40:42AM +0000, Saeed Mahameed wrote:
> > > >
> > > > > This assumes that the module using FOO has its own flag
> > > > > representing
> > > > > FOO which is not always the case.
> > > > >
> > > > > for example in mlx5 we use VXLAN config flag directly to compile
> > > > > VXLAN related files:
> > > > >
> > > > > mlx5/core/Makefile:
> > > > >
> > > > > obj-$(CONFIG_MLX5_CORE) += mlx5_core.o
> > > > >
> > > > > mlx5_core-y := mlx5_core.o
> > > > > mlx5_core-$(VXLAN) += mlx5_vxlan.o
> > > > >
> > > > > and in mlx5_main.o we do:
> > > >
> > > > Does this work if VXLAN = m ?
> > >
> > > Yes, if VXLAN IS_REACHABLE to MLX5, mlx5_vxlan.o will be
> > > compiled/linked.
> >
> > So mlx5_core-m does the right thing somehow?
>
> What happens with CONFIG_VXLAN=m is that the above turns into
>
> mlx5_core-y := mlx5_core.o
> mlx5_core-m += mlx5_vxlan.o
>
> which in turn leads to mlx5_core.ko *not* containing mlx5_vxlan.o,
> and in turn causing that link error against
> mlx5_vxlan_create/mlx5_vxlan_destroy, unless the IS_ENABLED()
> is changed to IS_REACHABLE().
What about the reverse if mlx5_core is 'm' and VLXAN is 'y'?
mlx5_core-m := mlx5_core.o
mlx5_core-y += mlx5_vxlan.o
Magically works out?
> > IIRC that isn't what the expression does, if vxlan is 'n' then
> > n || !n == true
>
> It forces MLX5_CORE to 'm' or 'n' but not 'y' if VXLAN=m,
> but allows any option if VXLAN=y
And any option if VXLAN=n ?
Jason
Powered by blists - more mailing lists