• Andrii Nakryiko's avatar
    selftests/bpf: Prevent skeleton generation race · 1e2666e0
    Andrii Nakryiko authored
    Prevent "classic" and light skeleton generation rules from stomping on
    each other's toes due to the use of the same <obj>.linked{1,2,3}.o
    naming pattern. There is no coordination and synchronizataion between
    .skel.h and .lskel.h rules, so they can easily overwrite each other's
    intermediate object files, leading to errors like:
    
      /bin/sh: line 1: 170928 Bus error               (core dumped)
      /data/users/andriin/linux/tools/testing/selftests/bpf/tools/sbin/bpftool gen skeleton
      /data/users/andriin/linux/tools/testing/selftests/bpf/test_ksyms_weak.linked3.o
      name test_ksyms_weak
      > /data/users/andriin/linux/tools/testing/selftests/bpf/test_ksyms_weak.skel.h
      make: *** [Makefile:507: /data/users/andriin/linux/tools/testing/selftests/bpf/test_ksyms_weak.skel.h] Error 135
      make: *** Deleting file '/data/users/andriin/linux/tools/testing/selftests/bpf/test_ksyms_weak.skel.h'
    
    Fix by using different suffix for light skeleton rule.
    
    Fixes: c48e51c8 ("bpf: selftests: Add selftests for module kfunc support")
    Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    Link: https://lore.kernel.org/bpf/20220509004148.1801791-2-andrii@kernel.org
    1e2666e0
Makefile 22.2 KB