bpf: bpf_probe_read helper restriction on s390x

Jiri Olsa
2020-07-05T19:42:25Z

hi,
with following commit:
0ebeea8ca8a4 bpf: Restrict bpf_probe_read{, str}() only to archs where they work

the bpf_probe_read BPF helper is restricted on architectures that
have 'non overlapping address space' and select following config:

select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE

there's also nice explanation in this commit's changelog:
6ae08ae3dea2 bpf: Add probe_read_{user, kernel} and probe_read_{user, kernel}_str helpers

We have a problem with bpftrace not working properly on s390x because
bpf_probe_read is no longer available, and bpftrace does not use
bpf_probe_read_(user/kernel) variants yet.

My question is if s390x is 'arch with overlapping address space' and we
could fix this by adding ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE for s390x
or we need to fix bpftrace to detect this, which we probably need to do
in any case ;-)

thanks,
jirka