lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <CANn89iLxUk6KpQ1a=Q+pNb95nkS6fYbHsuBGdxyTX23fuTGo6g@mail.gmail.com> Date: Tue, 30 May 2023 17:48:22 +0200 From: Eric Dumazet <edumazet@...gle.com> To: David Ahern <dsahern@...nel.org> Cc: Parav Pandit <parav@...dia.com>, davem@...emloft.net, kuba@...nel.org, pabeni@...hat.com, netdev@...r.kernel.org Subject: Re: [PATCH net-next] net: Make gro complete function to return void On Tue, May 30, 2023 at 5:25 PM David Ahern <dsahern@...nel.org> wrote: > > On 5/29/23 7:44 AM, Parav Pandit wrote: > > diff --git a/net/ipv4/tcp_offload.c b/net/ipv4/tcp_offload.c > > index 45dda7889387..88f9b0081ee7 100644 > > --- a/net/ipv4/tcp_offload.c > > +++ b/net/ipv4/tcp_offload.c > > @@ -296,7 +296,7 @@ struct sk_buff *tcp_gro_receive(struct list_head *head, struct sk_buff *skb) > > return pp; > > } > > > > -int tcp_gro_complete(struct sk_buff *skb) > > +void tcp_gro_complete(struct sk_buff *skb) > > { > > struct tcphdr *th = tcp_hdr(skb); > > > > @@ -311,8 +311,6 @@ int tcp_gro_complete(struct sk_buff *skb) > > > > if (skb->encapsulation) > > skb->inner_transport_header = skb->transport_header; > > - > > - return 0; > > } > > EXPORT_SYMBOL(tcp_gro_complete); > > tcp_gro_complete seems fairly trivial. Any reason not to make it an > inline and avoid another function call in the datapath? Probably, although it is a regular function call, not an indirect one. In the grand total of driver rx napi + GRO cost, saving a few cycles per GRO completed packet is quite small.
Powered by blists - more mailing lists