[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20170421.135339.120415455520577597.davem@davemloft.net>
Date: Fri, 21 Apr 2017 13:53:39 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: daniel@...earbox.net
Cc: edumazet@...gle.com, alexei.starovoitov@...il.com,
netdev@...r.kernel.org
Subject: Re: [PATCH net-next] bpf: add napi_id read access to __sk_buff
From: Daniel Borkmann <daniel@...earbox.net>
Date: Wed, 19 Apr 2017 23:01:17 +0200
> Add napi_id access to __sk_buff for socket filter program types, tc
> program types and other bpf_convert_ctx_access() users. Having access
> to skb->napi_id is useful for per RX queue listener siloing, f.e.
> in combination with SO_ATTACH_REUSEPORT_EBPF and when busy polling is
> used, meaning SO_REUSEPORT enabled listeners can then select the
> corresponding socket at SYN time already [1]. The skb is marked via
> skb_mark_napi_id() early in the receive path (e.g., napi_gro_receive()).
>
> Currently, sockets can only use SO_INCOMING_NAPI_ID from 6d4339028b35
> ("net: Introduce SO_INCOMING_NAPI_ID") as a socket option to look up
> the NAPI ID associated with the queue for steering, which requires a
> prior sk_mark_napi_id() after the socket was looked up.
>
> Semantics for the __sk_buff napi_id access are similar, meaning if
> skb->napi_id is < MIN_NAPI_ID (e.g. outgoing packets using sender_cpu),
> then an invalid napi_id of 0 is returned to the program, otherwise a
> valid non-zero napi_id.
>
> [1] http://netdevconf.org/2.1/slides/apr6/dumazet-BUSY-POLLING-Netdev-2.1.pdf
>
> Suggested-by: Eric Dumazet <edumazet@...gle.com>
> Signed-off-by: Daniel Borkmann <daniel@...earbox.net>
> Acked-by: Alexei Starovoitov <ast@...nel.org>
Applied, thanks Daniel.
Powered by blists - more mailing lists