Re: [PATCH bpf-next v3 05/12] bpf: sockmap: move generic sockmap hooks from BPF TCP

From: Jakub Sitnicki
Date: Thu Mar 05 2020 - 07:32:09 EST


On Wed, Mar 04, 2020 at 11:13 AM CET, Lorenz Bauer wrote:
> The init, close and unhash handlers from TCP sockmap are generic,
> and can be reused by UDP sockmap. Move the helpers into the sockmap code
> base and expose them. This requires tcp_bpf_get_proto and tcp_bpf_clone to
> be conditional on BPF_STREAM_PARSER.
>
> The moved functions are unmodified, except that sk_psock_unlink is
> renamed to sock_map_unlink to better match its behaviour.
>
> Signed-off-by: Lorenz Bauer <lmb@xxxxxxxxxxxxxx>
> ---

To spell out the tcp_bpf_get_proto() and tcp_bpf_clone() dependency on
CONFIG_BPF_STREAM_PARSER - both of these functions access tcp_bpf_prots,
which now hold pointers to sock_map_{unhash,close}. And
sock_map_{unhash,close} get built when CONFIG_BPF_STREAM_PARSER is
enabled.

Reviewed-by: Jakub Sitnicki <jakub@xxxxxxxxxxxxxx>

[...]