Issue found with 5.15.0-83.92~20.04.1
This is not a regression as we didn't test ubuntu_bpf on this kernel before.
Test build failed with:
CLNG-BPF [test_maps] test_global_func13.o
CLNG-BPF [test_maps] test_cls_redirect_subprogs.o
CLNG-BPF [test_maps] test_overhead.o
CLNG-BPF [test_maps] timer_mim.o
make[1]: Leaving directory '/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf'
make: Leaving directory '/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests'
stderr:
Warning: Kernel ABI header at 'tools/include/uapi/linux/bpf.h' differs from latest version at 'include/uapi/linux/bpf.h'
Warning: Kernel ABI header at 'tools/include/uapi/linux/netlink.h' differs from latest version at 'include/uapi/linux/netlink.h'
Warning: Kernel ABI header at 'tools/include/uapi/linux/if_link.h' differs from latest version at 'include/uapi/linux/if_link.h'
In file included from progs/timer_mim.c:7:
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:24:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:37:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:41:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:52:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:56:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:84:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:133:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:149:18: warning: unknown attribute 'preserve_access_index' ignored [-Wunknown-attributes]
} __attribute__((preserve_access_index));
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/bpf_tcp_helpers.h:208:11: error: use of unknown builtin '__builtin_preserve_field_info' [-Wimplicit-function-declaration]
return !!BPF_CORE_READ_BITFIELD(tp, is_cwnd_limited);
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/tools/include/bpf/bpf_core_read.h:88:36: note: expanded from macro 'BPF_CORE_READ_BITFIELD'
const void *p = (const void *)s + __CORE_RELO(s, field, BYTE_OFFSET); \
^
/home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/tools/include/bpf/bpf_core_read.h:41:2: note: expanded from macro '__CORE_RELO'
__builtin_preserve_field_info((src)->field, BPF_FIELD_##info)
^
8 warnings and 1 error generated.
make[1]: *** [Makefile:470: /home/ubuntu/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/timer_mim.o] Error 1
make: *** [Makefile:171: all] Error 2
Error message on F-hwe-5.15 ARM64
[stdout] CLNG-BPF [test_maps] tailcall3.o global_ func.o reloc_nesting_ __err_missing_ container. o test_case_ packing. o endian. c:4: autotest/ client/ tmp/ubuntu_ bpf/src/ linux/tools/ testing/ selftests/ bpf/tools/ include/ vmlinux. h:5:15: error: attribute 'preserve_ access_ index' is not supported by '#pragma clang attribute' _((preserve_ access_ index)) , apply_to = record) autotest/ client/ tmp/ubuntu_ bpf/src/ linux/tools/ testing/ selftests/ bpf/tools/ include/ vmlinux. h:160504: 15: error: '#pragma clang attribute pop' with no matching '#pragma clang attribute push' autotest/ client/ tmp/ubuntu_ bpf/src/ linux/tools/ testing/ selftests/ bpf/test_ endian. o] Error 1 ubuntu/ autotest/ client/ tmp/ubuntu_ bpf/src/ linux/tools/ testing/ selftests/ bpf' ubuntu/ autotest/ client/ tmp/ubuntu_ bpf/src/ linux/tools/ testing/ selftests'
[stdout] CLNG-BPF [test_maps] freplace_
[stdout] CLNG-BPF [test_maps] btf__core_
[stdout] CLNG-BPF [test_maps] btf_dump_
[stdout] CLNG-BPF [test_maps] test_endian.o
[stderr] In file included from progs/test_
[stderr] /home/ubuntu/
[stderr] #pragma clang attribute push (__attribute_
[stderr] ^
[stderr] /home/ubuntu/
[stderr] #pragma clang attribute pop
[stderr] ^
[stderr] 2 errors generated.
[stderr] make[1]: *** [Makefile:470: /home/ubuntu/
[stdout] make[1]: Leaving directory '/home/
[stdout] make: Leaving directory '/home/
[stderr] make: *** [Makefile:171: all] Error 2