[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7c73497a-19c3-bfa9-3a66-a1187d429c6d@fb.com>
Date: Wed, 24 Jan 2018 07:27:32 -0800
From: Alexei Starovoitov <ast@...com>
To: Eric Dumazet <eric.dumazet@...il.com>,
Lawrence Brakmo <brakmo@...com>,
netdev <netdev@...r.kernel.org>
CC: Kernel Team <kernel-team@...com>, Blake Matheny <bmatheny@...com>,
Daniel Borkmann <daniel@...earbox.net>,
Neal Cardwell <ncardwell@...gle.com>,
Yuchung Cheng <ycheng@...gle.com>
Subject: Re: [PATCH bpf-next v8 00/12] bpf: More sock_ops callbacks
On 1/24/18 6:14 AM, Eric Dumazet wrote:
> On Tue, 2018-01-23 at 23:57 -0800, Lawrence Brakmo wrote:
>> This patchset adds support for:
>>
>> - direct R or R/W access to many tcp_sock fields
>> - passing up to 4 arguments to sock_ops BPF functions
>> - tcp_sock field bpf_sock_ops_cb_flags for controlling callbacks
>> - optionally calling sock_ops BPF program when RTO fires
>> - optionally calling sock_ops BPF program when packet is retransmitted
>> - optionally calling sock_ops BPF program when TCP state changes
>> - access to tclass and sk_txhash
>> - new selftest
>>
>> v2: Fixed commit message 0/11. The commit is to "bpf-next" but the patch
>> below used "bpf" and Patchwork didn't work correctly.
>> v3: Cleaned RTO callback as per Yuchung's comment
>> Added BPF enum for TCP states as per Alexei's comment
>> v4: Fixed compile warnings related to detecting changes between TCP
>> internal states and the BPF defined states.
>> v5: Fixed comment issues in some selftest files
>> Fixed accesss issue with u64 fields in bpf_sock_ops struct
>> v6: Made fixes based on comments form Eric Dumazet:
>> The field bpf_sock_ops_cb_flags was addded in a hole on 64bit kernels
>> Field bpf_sock_ops_cb_flags is now set through a helper function
>> which returns an error when a BPF program tries to set bits for
>> callbacks that are not supported in the current kernel.
>> Added a comment indicating that when adding fields to bpf_sock_ops_kern
>> they should be added before the field named "temp" if they need to be
>> cleared before calling the BPF function.
>> v7: Enfornced fields "op" and "replylong[1] .. replylong[3]" not be writable
>> based on comments form Eric Dumazet and Alexei Starovoitov.
>> Filled 32 bit hole in bpf_sock_ops struct with sk_txhash based on
>> comments from Daniel Borkmann.
>> Removed unused functions (tcp_call_bpf_1arg, tcp_call_bpf_4arg) based
>> on comments from Daniel Borkmann.
>
> Please independently lets fix the congestion control bug before pushing
> more stuff.
>
> Fix needs to be backported to 4.13, so would target net tree.
>
> Fixes: 91b5b21c7c16 ("bpf: Add support for changing congestion control")
>
> Then your new functionalities can target net-next
>
> By mixing all the stuff, you make stable trees maintainer life more
> difficult than needed.
Most of the time, Yes, but it's the other way around this time.
I specifically asked Larry to do it this way, since net tree is
practically closed (only critical fixes allowed).
When 4.15 is released on Sunday we'll send this patch
independently to 4.15 and 4.14
Powered by blists - more mailing lists