mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 05:11:48 +00:00
bpf, tests: Add test for 32-bit context pointer argument passing
On a 32-bit architecture, the context pointer will occupy the low half of R1, and the other half will be zero. Signed-off-by: Johan Almbladh <johan.almbladh@anyfinetworks.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Link: https://lore.kernel.org/bpf/20210809091829.810076-12-johan.almbladh@anyfinetworks.com
This commit is contained in:
parent
66e5eb8474
commit
53e33f9928
@ -2092,6 +2092,22 @@ static struct bpf_test tests[] = {
|
||||
#undef NUMER
|
||||
#undef DENOM
|
||||
},
|
||||
#ifdef CONFIG_32BIT
|
||||
{
|
||||
"INT: 32-bit context pointer word order and zero-extension",
|
||||
.u.insns_int = {
|
||||
BPF_ALU32_IMM(BPF_MOV, R0, 0),
|
||||
BPF_JMP32_IMM(BPF_JEQ, R1, 0, 3),
|
||||
BPF_ALU64_IMM(BPF_RSH, R1, 32),
|
||||
BPF_JMP32_IMM(BPF_JNE, R1, 0, 1),
|
||||
BPF_ALU32_IMM(BPF_MOV, R0, 1),
|
||||
BPF_EXIT_INSN(),
|
||||
},
|
||||
INTERNAL,
|
||||
{ },
|
||||
{ { 0, 1 } }
|
||||
},
|
||||
#endif
|
||||
{
|
||||
"check: missing ret",
|
||||
.u.insns = {
|
||||
|
Loading…
Reference in New Issue
Block a user