On Tue, Jun 11, 2019 at 10:41 AM Gustavo A. R. Silva <gustavo@xxxxxxxxxxxxxx> wrote: > > > > On 6/11/19 12:27 PM, Gustavo A. R. Silva wrote: > > > > > > On 6/11/19 12:22 PM, Andrii Nakryiko wrote: > >> On Tue, Jun 11, 2019 at 7:05 AM Gustavo A. R. Silva > >> <gustavo@xxxxxxxxxxxxxx> wrote: > >>> > >>> In preparation to enabling -Wimplicit-fallthrough, this patch silences > >>> the following warning: > >> > >> Your patch doesn't apply cleanly to neither bpf nor bpf-next tree. > >> Could you please rebase and re-submit? Please also include which tree > >> (probably bpf-next) you are designating this patch to in subject > >> prefix. > >> > > > > This patch applies cleanly to linux-next (tag next-20190611). > > > > It seems that this commit hasn't been merged into bpf/bpf-next yet: > > 983695fa676568fc0fe5ddd995c7267aabc24632 > > -- > Gustavo > > >>> > >>> kernel/bpf/verifier.c: In function ‘check_return_code’: > >>> kernel/bpf/verifier.c:5509:6: warning: this statement may fall through [-Wimplicit-fallthrough=] > >>> if (env->prog->expected_attach_type == BPF_CGROUP_UDP4_RECVMSG || > >>> ^ > >>> kernel/bpf/verifier.c:5512:2: note: here > >>> case BPF_PROG_TYPE_CGROUP_SKB: > >>> ^~~~ > >>> > >>> Warning level 3 was used: -Wimplicit-fallthrough=3 > >>> > >>> Notice that it's much clearer to explicitly add breaks in each case > >>> (that actually contains some code), rather than letting the code to > >>> fall through. > >>> > >>> This patch is part of the ongoing efforts to enable > >>> -Wimplicit-fallthrough. > >>> > >>> Signed-off-by: Gustavo A. R. Silva <gustavo@xxxxxxxxxxxxxx> > >>> --- > >>> kernel/bpf/verifier.c | 2 ++ > >>> 1 file changed, 2 insertions(+) > >>> > >>> diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c > >>> index 1e9d10b32984..e9fc28991548 100644 > >>> --- a/kernel/bpf/verifier.c > >>> +++ b/kernel/bpf/verifier.c > >>> @@ -5509,11 +5509,13 @@ static int check_return_code(struct bpf_verifier_env *env) > >>> if (env->prog->expected_attach_type == BPF_CGROUP_UDP4_RECVMSG || > >>> env->prog->expected_attach_type == BPF_CGROUP_UDP6_RECVMSG) > >>> range = tnum_range(1, 1); > >>> + break; So this part is in bpf tree only... > >>> case BPF_PROG_TYPE_CGROUP_SKB: > >>> if (env->prog->expected_attach_type == BPF_CGROUP_INET_EGRESS) { > >>> range = tnum_range(0, 3); > >>> enforce_attach_type_range = tnum_range(2, 3); > >>> } > >>> + break; ... while this one is in bpf-next only. Maybe just split this into two separate patches, one targeting bpf tree and another for bpf-next tree? Unless you are willing to wait till bpf is merged into bpf-next. > >>> case BPF_PROG_TYPE_CGROUP_SOCK: > >>> case BPF_PROG_TYPE_SOCK_OPS: > >>> case BPF_PROG_TYPE_CGROUP_DEVICE: > >>> -- > >>> 2.21.0 > >>>