Message ID | 20220127083240.1425481-1-houtao1@huawei.com (mailing list archive) |
---|---|
State | Accepted |
Commit | b6ec79518ef0c84d1ed0f76b8af9592a75eb29b6 |
Delegated to: | BPF |
Headers | show |
Series | [bpf-next] bpf, x86: remove unnecessary handling of BPF_SUB atomic op | expand |
Yep - BPF_SUB is also excluded in Documentation/networking/filter.rst, plus the interpreter and verifier don't support it. Thanks, Acked-by: Brendan Jackman <jackmanb@google.com> On Thu, 27 Jan 2022 at 09:17, Hou Tao <houtao1@huawei.com> wrote: > > According to the LLVM commit (https://reviews.llvm.org/D72184), > sync_fetch_and_sub() is implemented as a negation followed by > sync_fetch_and_add(), so there will be no BPF_SUB op and just > remove it. > > Signed-off-by: Hou Tao <houtao1@huawei.com> > --- > arch/x86/net/bpf_jit_comp.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/arch/x86/net/bpf_jit_comp.c b/arch/x86/net/bpf_jit_comp.c > index ce1f86f245c9..5d643ebb1e56 100644 > --- a/arch/x86/net/bpf_jit_comp.c > +++ b/arch/x86/net/bpf_jit_comp.c > @@ -787,7 +787,6 @@ static int emit_atomic(u8 **pprog, u8 atomic_op, > /* emit opcode */ > switch (atomic_op) { > case BPF_ADD: > - case BPF_SUB: > case BPF_AND: > case BPF_OR: > case BPF_XOR: > -- > 2.29.2 >
Hello: This patch was applied to bpf/bpf-next.git (master) by Daniel Borkmann <daniel@iogearbox.net>: On Thu, 27 Jan 2022 16:32:40 +0800 you wrote: > According to the LLVM commit (https://reviews.llvm.org/D72184), > sync_fetch_and_sub() is implemented as a negation followed by > sync_fetch_and_add(), so there will be no BPF_SUB op and just > remove it. > > Signed-off-by: Hou Tao <houtao1@huawei.com> > > [...] Here is the summary with links: - [bpf-next] bpf, x86: remove unnecessary handling of BPF_SUB atomic op https://git.kernel.org/bpf/bpf-next/c/b6ec79518ef0 You are awesome, thank you!
On 1/27/22 11:48 AM, Brendan Jackman wrote: > Yep - BPF_SUB is also excluded in Documentation/networking/filter.rst, > plus the interpreter and verifier don't support it. > > Thanks, > > Acked-by: Brendan Jackman <jackmanb@google.com> I was wondering about verifier specifically as well. Added a note to the commit log that verifier rejects BPF_SUB while applying, thanks! > On Thu, 27 Jan 2022 at 09:17, Hou Tao <houtao1@huawei.com> wrote: >> >> According to the LLVM commit (https://reviews.llvm.org/D72184), >> sync_fetch_and_sub() is implemented as a negation followed by >> sync_fetch_and_add(), so there will be no BPF_SUB op and just >> remove it. >> >> Signed-off-by: Hou Tao <houtao1@huawei.com> >> --- >> arch/x86/net/bpf_jit_comp.c | 1 - >> 1 file changed, 1 deletion(-) >> >> diff --git a/arch/x86/net/bpf_jit_comp.c b/arch/x86/net/bpf_jit_comp.c >> index ce1f86f245c9..5d643ebb1e56 100644 >> --- a/arch/x86/net/bpf_jit_comp.c >> +++ b/arch/x86/net/bpf_jit_comp.c >> @@ -787,7 +787,6 @@ static int emit_atomic(u8 **pprog, u8 atomic_op, >> /* emit opcode */ >> switch (atomic_op) { >> case BPF_ADD: >> - case BPF_SUB: >> case BPF_AND: >> case BPF_OR: >> case BPF_XOR: >> -- >> 2.29.2 >>
Daniel Borkmann wrote: > On 1/27/22 11:48 AM, Brendan Jackman wrote: > > Yep - BPF_SUB is also excluded in Documentation/networking/filter.rst, > > plus the interpreter and verifier don't support it. > > > > Thanks, > > > > Acked-by: Brendan Jackman <jackmanb@google.com> > > I was wondering about verifier specifically as well. Added a note to the > commit log that verifier rejects BPF_SUB while applying, thanks! > Thanks for the follow up Hou/Brendan LGTM as well. After its been merged, but ACK from me as well.
diff --git a/arch/x86/net/bpf_jit_comp.c b/arch/x86/net/bpf_jit_comp.c index ce1f86f245c9..5d643ebb1e56 100644 --- a/arch/x86/net/bpf_jit_comp.c +++ b/arch/x86/net/bpf_jit_comp.c @@ -787,7 +787,6 @@ static int emit_atomic(u8 **pprog, u8 atomic_op, /* emit opcode */ switch (atomic_op) { case BPF_ADD: - case BPF_SUB: case BPF_AND: case BPF_OR: case BPF_XOR:
According to the LLVM commit (https://reviews.llvm.org/D72184), sync_fetch_and_sub() is implemented as a negation followed by sync_fetch_and_add(), so there will be no BPF_SUB op and just remove it. Signed-off-by: Hou Tao <houtao1@huawei.com> --- arch/x86/net/bpf_jit_comp.c | 1 - 1 file changed, 1 deletion(-)