diff options
author | Eduard Zingerman <eddyz87@gmail.com> | 2023-02-15 01:20:27 +0200 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2023-02-15 11:48:47 -0800 |
commit | ecdf985d7615356b78241fdb159c091830ed0380 (patch) | |
tree | 09cc7458a92f11576b1eb4d10f10aa97bf6372dc /tools/testing/selftests/bpf/prog_tests/recursion.c | |
parent | 62d101d5f422cde39b269f7eb4cbbe2f1e26f9d4 (diff) | |
download | linux-ecdf985d7615356b78241fdb159c091830ed0380.tar.gz linux-ecdf985d7615356b78241fdb159c091830ed0380.tar.bz2 linux-ecdf985d7615356b78241fdb159c091830ed0380.zip |
bpf: track immediate values written to stack by BPF_ST instruction
For aligned stack writes using BPF_ST instruction track stored values
in a same way BPF_STX is handled, e.g. make sure that the following
commands produce similar verifier knowledge:
fp[-8] = 42; r1 = 42;
fp[-8] = r1;
This covers two cases:
- non-null values written to stack are stored as spill of fake
registers;
- null values written to stack are stored as STACK_ZERO marks.
Previously both cases above used STACK_MISC marks instead.
Some verifier test cases relied on the old logic to obtain STACK_MISC
marks for some stack values. These test cases are updated in the same
commit to avoid failures during bisect.
Signed-off-by: Eduard Zingerman <eddyz87@gmail.com>
Link: https://lore.kernel.org/r/20230214232030.1502829-2-eddyz87@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools/testing/selftests/bpf/prog_tests/recursion.c')
0 files changed, 0 insertions, 0 deletions