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@xxxxxxxxxx>
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@xxxxxxxxxx> 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@xxxxxxxxxx>
---
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