test_snprintf_btf fails on s390, because NULL points to a readable struct lowcore there. Fix by using _REGION1_SIZE instead. Signed-off-by: Ilya Leoshkevich <iii@xxxxxxxxxxxxx> --- tools/testing/selftests/bpf/progs/netif_receive_skb.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/bpf/progs/netif_receive_skb.c b/tools/testing/selftests/bpf/progs/netif_receive_skb.c index 6b670039ea67..fa54d2abc41e 100644 --- a/tools/testing/selftests/bpf/progs/netif_receive_skb.c +++ b/tools/testing/selftests/bpf/progs/netif_receive_skb.c @@ -16,6 +16,13 @@ bool skip = false; #define STRSIZE 2048 #define EXPECTED_STRSIZE 256 +#if defined(bpf_target_s390) +/* NULL points to a readable struct lowcore on s390, so take _REGION1_SIZE */ +#define BADPTR ((void *)(1ULL << 53)) +#else +#define BADPTR 0 +#endif + #ifndef ARRAY_SIZE #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) #endif @@ -114,9 +121,9 @@ int BPF_PROG(trace_netif_receive_skb, struct sk_buff *skb) /* Check invalid ptr value */ p.ptr = 0; - __ret = bpf_snprintf_btf(str, STRSIZE, &p, sizeof(p), 0); + __ret = bpf_snprintf_btf(str, STRSIZE, &p, sizeof(p), BADPTR); if (__ret >= 0) { - bpf_printk("printing NULL should generate error, got (%d)", + bpf_printk("printing BADPTR should generate error, got (%d)", __ret); ret = -ERANGE; } -- 2.29.2