All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 net-next 0/3] gro: micro-optimize dev_gro_receive()
@ 2021-03-13 20:29 Alexander Lobakin
  2021-03-13 20:30 ` [PATCH v2 net-next 1/3] gro: simplify gro_list_prepare() Alexander Lobakin
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Alexander Lobakin @ 2021-03-13 20:29 UTC (permalink / raw)
  To: David S. Miller, Jakub Kicinski
  Cc: Alexei Starovoitov, Daniel Borkmann, Andrii Nakryiko,
	Alexander Lobakin, Eric Dumazet, Wei Wang, Cong Wang, Taehee Yoo,
	netdev, linux-kernel

This random series addresses some of suboptimal constructions used
in the main GRO entry point.
The main body is gro_list_prepare() simplification and pointer usage
optimization in dev_gro_receive() itself. Being mostly cosmetic, it
gives like +10 Mbps on my setup to both TCP and UDP (both single- and
multi-flow).

Since v1 [0]:
 - drop the replacement of bucket index calculation with
   reciprocal_scale() since it makes absolutely no sense (Eric);
 - improve stack usage in dev_gro_receive() (Eric);
 - reverse the order of patches to avoid changes superseding.

[0] https://lore.kernel.org/netdev/20210312162127.239795-1-alobakin@pm.me

Alexander Lobakin (3):
  gro: simplify gro_list_prepare()
  gro: consistentify napi->gro_hash[x] access in dev_gro_receive()
  gro: give 'hash' variable in dev_gro_receive() a less confusing name

 net/core/dev.c | 40 ++++++++++++++++++----------------------
 1 file changed, 18 insertions(+), 22 deletions(-)

--
2.30.2



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-03-15  8:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-13 20:29 [PATCH v2 net-next 0/3] gro: micro-optimize dev_gro_receive() Alexander Lobakin
2021-03-13 20:30 ` [PATCH v2 net-next 1/3] gro: simplify gro_list_prepare() Alexander Lobakin
2021-03-13 20:30 ` [PATCH v2 net-next 2/3] gro: consistentify napi->gro_hash[x] access in dev_gro_receive() Alexander Lobakin
2021-03-13 20:30 ` [PATCH v2 net-next 3/3] gro: give 'hash' variable in dev_gro_receive() a less confusing name Alexander Lobakin
2021-03-15  8:50 ` [PATCH v2 net-next 0/3] gro: micro-optimize dev_gro_receive() Eric Dumazet

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.