On Sun, Feb 6, 2022 at 6:54 AM Ilya Leoshkevich <iii@xxxxxxxxxxxxx> wrote: > > libbpf CI noticed that my recent changes broke bpf_perf_event_data ABI > on s390 [1]. Testing shows that they introduced a similar breakage on > arm64. The problem is that we are not allowed to extend user_pt_regs, > since it's used by bpf_perf_event_data. > > This series fixes these problems by removing the new members and > introducing user_pt_regs_v2 instead. > > [1] https://github.com/libbpf/libbpf/runs/5079938810 > > Ilya Leoshkevich (2): > s390/bpf: Introduce user_pt_regs_v2 > arm64/bpf: Introduce struct user_pt_regs_v2 Given it is bpf_perf_event_data and thus bpf_user_pt_regs_t definitions that are set in stone now, wouldn't it be better to instead just change typedef user_pt_regs bpf_user_pt_regs_t; (s390x) typedef struct user_pt_regs bpf_user_pt_regs_t; (arm64) to just define that fixed layout instead of reusing user_ptr_regs? This whole v2 business looks really ugly. > > arch/arm64/include/asm/ptrace.h | 1 + > arch/arm64/include/uapi/asm/ptrace.h | 7 +++++++ > arch/s390/include/asm/ptrace.h | 1 + > arch/s390/include/uapi/asm/ptrace.h | 10 ++++++++-- > tools/lib/bpf/bpf_tracing.h | 10 ++++++---- > 5 files changed, 23 insertions(+), 6 deletions(-) > > -- > 2.34.1 >