Re: [PATCH net-next v3 2/5] vxlan: Expose helper vxlan_build_gbp_hdr

From: Simon Horman
Date: Tue Feb 21 2023 - 04:31:16 EST


On Tue, Feb 21, 2023 at 08:38:17AM +0100, Paolo Abeni wrote:
> On Mon, 2023-02-20 at 12:30 -0800, Jakub Kicinski wrote:
> > On Mon, 20 Feb 2023 11:31:59 +0100 Simon Horman wrote:
> > > On Mon, Feb 20, 2023 at 03:15:20PM +0800, Gavin Li wrote:
> > > > > Right. But what I was really wondering is if the definition
> > > > > of the function could stay in drivers/net/vxlan/vxlan_core.c,
> > > > > without being static. And have a declaration in include/net/vxlan.h
> > > >
> > > > Tried that the first time the function was called by driver code. It would
> > > > introduce dependency in linking between the driver and the kernel module.
> > > >
> > > > Do you think it's OK to have such dependency?
> > >
> > > IMHO, yes. But others may feel differently.
> > >
> > > I do wonder if any performance overhead of a non-inline function
> > > also needs to be considered.
> >
> > Do you recall any details of why Hannes broke the dependency in the
> > first place?
>
> IIRC it was that was a cleanup thing, so that setup not using vxlan
> does not load the module (and the related deps chain) for no reasons.
>
> Cheers,
>
> Paolo
>
> > Commit b7aade15485a ("vxlan: break dependency with netdev drivers")
> > Maybe we should stick to the static inline, it doesn't look too
> > large/terrible?
>
> IMHO static inline is good enough here.

Thanks Paolo and Jakub,

I do not recall the background to the change.
But your reasoning sounds good to me.

Let's stick with static inline.