| /Linux-v5.15/tools/testing/selftests/bpf/verifier/ |
| D | atomic_fetch_add.c | 9 BPF_ATOMIC_OP(BPF_DW, BPF_ADD | BPF_FETCH, BPF_REG_10, BPF_REG_1, -8), 31 BPF_ATOMIC_OP(BPF_W, BPF_ADD | BPF_FETCH, BPF_REG_10, BPF_REG_1, -4), 50 BPF_ATOMIC_OP(BPF_DW, BPF_ADD | BPF_FETCH, BPF_REG_10, BPF_REG_10, -8), 62 BPF_ATOMIC_OP(BPF_DW, BPF_ADD | BPF_FETCH, BPF_REG_10, BPF_REG_2, -8), 75 BPF_ATOMIC_OP(BPF_DW, BPF_ADD | BPF_FETCH, BPF_REG_2, BPF_REG_0, -8), 96 BPF_ATOMIC_OP(BPF_DW, BPF_ADD | BPF_FETCH, BPF_REG_2, BPF_REG_3, 0),
|
| D | atomic_and.c | 30 BPF_ATOMIC_OP(BPF_DW, BPF_AND | BPF_FETCH, BPF_REG_10, BPF_REG_1, -8), 60 BPF_ATOMIC_OP(BPF_W, BPF_AND | BPF_FETCH, BPF_REG_10, BPF_REG_1, -4), 85 BPF_ATOMIC_OP(BPF_DW, BPF_AND | BPF_FETCH, BPF_REG_10, BPF_REG_0, -8),
|
| D | atomic_or.c | 30 BPF_ATOMIC_OP(BPF_DW, BPF_OR | BPF_FETCH, BPF_REG_10, BPF_REG_1, -8), 60 BPF_ATOMIC_OP(BPF_W, BPF_OR | BPF_FETCH, BPF_REG_10, BPF_REG_1, -4), 88 BPF_ATOMIC_OP(BPF_W, BPF_OR | BPF_FETCH, BPF_REG_10, BPF_REG_1, -8),
|
| D | atomic_xor.c | 30 BPF_ATOMIC_OP(BPF_DW, BPF_XOR | BPF_FETCH, BPF_REG_10, BPF_REG_1, -8), 60 BPF_ATOMIC_OP(BPF_W, BPF_XOR | BPF_FETCH, BPF_REG_10, BPF_REG_1, -4),
|
| D | atomic_bounds.c | 18 BPF_ATOMIC_OP(BPF_DW, BPF_ADD | BPF_FETCH, BPF_REG_10, BPF_REG_1, -8),
|
| /Linux-v5.15/kernel/bpf/ |
| D | disasm.c | 180 (insn->imm == (BPF_ADD | BPF_FETCH) || in print_bpf_insn() 181 insn->imm == (BPF_AND | BPF_FETCH) || in print_bpf_insn() 182 insn->imm == (BPF_OR | BPF_FETCH) || in print_bpf_insn() 183 insn->imm == (BPF_XOR | BPF_FETCH))) { in print_bpf_insn()
|
| D | verifier.c | 2035 (insn->imm & BPF_FETCH)) { in insn_def_regno() 4335 case BPF_ADD | BPF_FETCH: in check_atomic() 4337 case BPF_AND | BPF_FETCH: in check_atomic() 4339 case BPF_OR | BPF_FETCH: in check_atomic() 4341 case BPF_XOR | BPF_FETCH: in check_atomic() 4387 if (insn->imm & BPF_FETCH) { in check_atomic()
|
| D | core.c | 1681 case BOP | BPF_FETCH: \ in ___bpf_prog_run()
|
| /Linux-v5.15/lib/ |
| D | test_bpf.c | 5596 { { 0, (op) & BPF_FETCH ? old : update } }, \ 5605 BPF_ATOMIC_OP_TEST1(BPF_W, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5606 BPF_ATOMIC_OP_TEST2(BPF_W, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5607 BPF_ATOMIC_OP_TEST3(BPF_W, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5608 BPF_ATOMIC_OP_TEST4(BPF_W, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5615 BPF_ATOMIC_OP_TEST1(BPF_DW, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5616 BPF_ATOMIC_OP_TEST2(BPF_DW, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5617 BPF_ATOMIC_OP_TEST3(BPF_DW, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5618 BPF_ATOMIC_OP_TEST4(BPF_DW, BPF_ADD | BPF_FETCH, +, 0x12, 0xab, 0xbd), 5625 BPF_ATOMIC_OP_TEST1(BPF_W, BPF_AND | BPF_FETCH, &, 0x12, 0xab, 0x02), [all …]
|
| /Linux-v5.15/arch/s390/net/ |
| D | bpf_jit_comp.c | 1230 (insn->imm & BPF_FETCH) ? src_reg : REG_W0, \ in bpf_jit_insn() 1232 if (is32 && (insn->imm & BPF_FETCH)) \ in bpf_jit_insn() 1236 case BPF_ADD | BPF_FETCH: in bpf_jit_insn() 1241 case BPF_AND | BPF_FETCH: in bpf_jit_insn() 1246 case BPF_OR | BPF_FETCH: in bpf_jit_insn() 1251 case BPF_XOR | BPF_FETCH: in bpf_jit_insn()
|
| /Linux-v5.15/include/uapi/linux/ |
| D | bpf.h | 48 #define BPF_FETCH 0x01 /* not an opcode on its own, used to build others */ macro 49 #define BPF_XCHG (0xe0 | BPF_FETCH) /* atomic exchange */ 50 #define BPF_CMPXCHG (0xf0 | BPF_FETCH) /* atomic compare-and-write */
|
| /Linux-v5.15/tools/include/uapi/linux/ |
| D | bpf.h | 48 #define BPF_FETCH 0x01 /* not an opcode on its own, used to build others */ macro 49 #define BPF_XCHG (0xe0 | BPF_FETCH) /* atomic exchange */ 50 #define BPF_CMPXCHG (0xf0 | BPF_FETCH) /* atomic compare-and-write */
|
| /Linux-v5.15/arch/x86/net/ |
| D | bpf_jit_comp.c | 807 case BPF_ADD | BPF_FETCH: in emit_atomic() 1341 if (insn->imm == (BPF_AND | BPF_FETCH) || in do_jit() 1342 insn->imm == (BPF_OR | BPF_FETCH) || in do_jit() 1343 insn->imm == (BPF_XOR | BPF_FETCH)) { in do_jit()
|
| /Linux-v5.15/Documentation/networking/ |
| D | filter.rst | 1074 ``src_reg`` as the other operand. If the ``BPF_FETCH`` flag is set in the 1095 Clang can generate is ``BPF_ADD`` *without* ``BPF_FETCH``. If you need to enable
|