[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAF=yD-+z8-rq5bcrm3NdMv4kHp1HvoucxVBG3kLHxV9NS35EBw@mail.gmail.com>
Date: Wed, 3 Jul 2019 10:45:13 -0400
From: Willem de Bruijn <willemdebruijn.kernel@...il.com>
To: Paolo Abeni <pabeni@...hat.com>
Cc: Network Development <netdev@...r.kernel.org>,
"David S. Miller" <davem@...emloft.net>
Subject: Re: [PATCH net-next v2 0/5] net: use ICW for sk_proto->{send,recv}msg
On Wed, Jul 3, 2019 at 10:07 AM Paolo Abeni <pabeni@...hat.com> wrote:
>
> This series extends ICW usage to one of the few remaining spots in fast-path
> still hitting per packet retpoline overhead, namely the sk_proto->{send,recv}msg
> calls.
>
> The first 3 patches in this series refactor the existing code so that applying
> the ICW macros is straight-forward: we demux inet_{recv,send}msg in ipv4 and
> ipv6 variants so that each of them can easily select the appropriate TCP or UDP
> direct call. While at it, a new helper is created to avoid excessive code
> duplication, and the current ICWs for inet_{recv,send}msg are adjusted
> accordingly.
>
> The last 2 patches really introduce the new ICW use-case, respectively for the
> ipv6 and the ipv4 code path.
>
> This gives up to 5% performance improvement under UDP flood, and smaller but
> measurable gains for TCP RR workloads.
>
> v1 -> v2:
> - drop inet6_{recv,send}msg declaration from header file,
> prefer ICW macro instead
> - avoid unneeded reclaration for udp_sendmsg, as suggested by Willem
>
> Paolo Abeni (5):
> inet: factor out inet_send_prepare()
> ipv6: provide and use ipv6 specific version for {recv,send}msg
> net: adjust socket level ICW to cope with ipv6 variant of
> {recv,send}msg
> ipv6: use indirect call wrappers for {tcp,udpv6}_{recv,send}msg()
> ipv4: use indirect call wrappers for {tcp,udp}_{recv,send}msg()
Acked-by: Willem de Bruijn <willemb@...gle.com>
Powered by blists - more mailing lists