• Yonghong Song's avatar
    selftests/bpf: Skip btf_tag test if btf_tag attribute not supported · 2220ecf5
    Yonghong Song authored
    Commit c240ba28 ("selftests/bpf: Add a test with a bpf
    program with btf_tag attributes") added btf_tag selftest
    to test BTF_KIND_TAG generation from C source code, and to
    test kernel validation of generated BTF types.
    But if an old clang (clang 13 or earlier) is used, the
    following compiler warning may be seen:
      progs/tag.c:23:20: warning: unknown attribute 'btf_tag' ignored
    and the test itself is marked OK. The compiler warning is bad
    and the test itself shouldn't be marked OK.
    
    This patch added the check for btf_tag attribute support.
    If btf_tag is not supported by the clang, the attribute will
    not be used in the code and the test will be marked as skipped.
    For example, with clang 13:
      ./test_progs -t btf_tag
      #21 btf_tag:SKIP
      Summary: 1/0 PASSED, 1 SKIPPED, 0 FAILED
    
    The selftests/README.rst is updated to clarify when the btf_tag
    test may be skipped.
    Signed-off-by: default avatarYonghong Song <yhs@fb.com>
    Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
    Link: https://lore.kernel.org/bpf/20210915061036.2577971-1-yhs@fb.com
    2220ecf5
README.rst 8.11 KB