[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAOkoqZniH-7jc3gMtVSP0Htn4DOQ51QE_DjDW1JmY2dm-ekDHQ@mail.gmail.com>
Date: Sat, 5 Mar 2022 16:39:04 -0800
From: Dimitris Michailidis <d.michailidis@...gible.com>
To: Jakub Kicinski <kuba@...nel.org>
Cc: Randy Dunlap <rdunlap@...radead.org>, netdev@...r.kernel.org,
patches@...ts.linux.dev,
Dimitris Michailidis <dmichail@...gible.com>,
"David S. Miller" <davem@...emloft.net>
Subject: Re: [PATCH net-next?] net: fungible: fix multiple build problems
On Fri, Mar 4, 2022 at 7:41 PM Jakub Kicinski <kuba@...nel.org> wrote:
>
> On Fri, 4 Mar 2022 16:39:49 -0800 Dimitris Michailidis wrote:
> > > Also, gcc 7.5 does not handle the "C language" vs. #ifdef preprocessor
> > > usage of IS_ENABLED() very well -- it is causing compile errors.
> >
> > I believe this is the source of the errors you see but it's not the compiler's
> > fault or something specific to 7.5.0. The errors are because when
> > IS_ENABLED() is false some of the symbols in the "if" are undefined and the
> > compiler checks them regardless.
>
> The compiler will need at least a declaration, right? tls_driver_ctx()
> is pretty stupidly hidden under an ifdef, for reasons which I cannot
> recall. Maybe we can take it out?
>
> Same thing could work for fun_tls_tx():
>
> return skb;
> }
> +#else
> +struct sk_buff *fun_tls_tx(struct sk_buff *skb, struct funeth_txq *q,
> + unsigned int *tls_len);
> #endif
>
> no?
Yes, including net/tls.h and funeth_ktls.h unconditionally along with
providing dummy definitions for the symbols involved in these errors when
CONFIG_TLS_DEVICE=n would also solve the problem. I'd prefer this over
adding #ifdef to have the compiler check the code regardless of configuration.
Powered by blists - more mailing lists