Re: [PATCH net-next 2/4] gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper
From: Alexander Lobakin
Date: Fri Mar 19 2021 - 07:43:56 EST
From: Alexander Lobakin <alobakin@xxxxx>
Date: Fri, 19 Mar 2021 11:13:25 +0000
> From: Paolo Abeni <pabeni@xxxxxxxxxx>
> Date: Fri, 19 Mar 2021 11:53:42 +0100
> > Hello,
> > On Thu, 2021-03-18 at 18:42 +0000, Alexander Lobakin wrote:
> > > call_gro_receive() is used to limit GRO recursion, but it works only
> > > with callback pointers.
> > > There's a combined version of call_gro_receive() + INDIRECT_CALL_2()
> > > in <net/inet_common.h>, but it doesn't check for IPv6 modularity.
> > AFAICS, ip6_offload is builtin even when IPv6 is a module, so the above
> > should not be needed.
> Aww, you are right. I overlooked that since dev_gro_receive() still
> use INDIRECT_CALL_INET(), though all GRO callbacks were made
I'm not sure if you did it on purpose in commit aaa5d90b395a7
("net: use indirect call wrappers at GRO network layer").
Was that intentional for the sake of more optimized path for the
kernels with moduled IPv6, or I can replace INDIRECT_CALL_INET()
with INDIRECT_CALL_2() here too? I want to keep GRO callbacks that
make use of indirect call wrappers unified.
> Seems like more code can be optimized, thanks!
> > Cheers,
> > Paolo