make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/tags' CC tags_test make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/tags' make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/signal' cp testcases/fake_sigreturn_sme_change_vl testcases/za_no_regs testcases/sme_trap_no_sm testcases/sme_trap_za testcases/fake_sigreturn_bad_magic testcases/mangle_pstate_invalid_mode_el1t testcases/zt_regs testcases/fpmr_siginfo testcases/mangle_pstate_invalid_mode_el3h testcases/ssve_regs testcases/mangle_pstate_invalid_mode_el1h testcases/fake_sigreturn_sve_change_vl testcases/mangle_pstate_invalid_daif_bits testcases/ssve_za_regs testcases/mangle_pstate_invalid_mode_el2t testcases/sme_trap_non_streaming testcases/fake_sigreturn_missing_fpsimd testcases/sve_regs testcases/fake_sigreturn_duplicated_fpsimd testcases/tpidr2_restore testcases/za_regs testcases/zt_no_regs testcases/sme_vl testcases/mangle_pstate_invalid_mode_el2h testcases/mangle_pstate_invalid_compat_toggle testcases/tpidr2_siginfo testcases/fake_sigreturn_bad_size testcases/fake_sigreturn_misaligned_sp testcases/sve_vl testcases/mangle_pstate_invalid_mode_el3t testcases/fake_sigreturn_bad_size_for_magic0 /signal/ make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/signal' make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/pauth' gcc -c pac_corruptor.S -o /pauth/pac_corruptor.o -Wall -O2 -g -I/linux_mainline/tools/testing/selftests/ -I/linux_mainline/tools/include -mbranch-protection=pac-ret -march=armv8.3-a gcc -c helper.c -o /pauth/helper.o -Wall -O2 -g -I/linux_mainline/tools/testing/selftests/ -I/linux_mainline/tools/include -mbranch-protection=pac-ret -march=armv8.3-a gcc pac.c /pauth/pac_corruptor.o /pauth/helper.o -o /pauth/pac -Wall -O2 -g -I/linux_mainline/tools/testing/selftests/ -I/linux_mainline/tools/include -mbranch-protection=pac-ret -march=armv8.2-a In file included from pac.c:13: ../../kselftest_harness.h: In function ‘clone3_vfork’: ../../kselftest_harness.h:88:9: error: variable ‘args’ has initializer but incomplete type 88 | struct clone_args args = { | ^~~~~~~~~~ ../../kselftest_harness.h:89:4: error: ‘struct clone_args’ has no member named ‘flags’ 89 | .flags = CLONE_VFORK, | ^~~~~ ../../kselftest_harness.h:89:12: warning: excess elements in struct initializer 89 | .flags = CLONE_VFORK, | ^~~~~~~~~~~ ../../kselftest_harness.h:89:12: note: (near initialization for ‘args’) ../../kselftest_harness.h:90:4: error: ‘struct clone_args’ has no member named ‘exit_signal’ 90 | .exit_signal = SIGCHLD, | ^~~~~~~~~~~ ../../kselftest_harness.h:90:18: warning: excess elements in struct initializer 90 | .exit_signal = SIGCHLD, | ^~~~~~~ ../../kselftest_harness.h:90:18: note: (near initialization for ‘args’) ../../kselftest_harness.h:88:20: error: storage size of ‘args’ isn’t known 88 | struct clone_args args = { | ^~~~ ../../kselftest_harness.h:93:17: error: ‘__NR_clone3’ undeclared (first use in this function) 93 | return syscall(__NR_clone3, &args, sizeof(args)); | ^~~~~~~~~~~ ../../kselftest_harness.h:93:17: note: each undeclared identifier is reported only once for each function it appears in ../../kselftest_harness.h:88:20: warning: unused variable ‘args’ [-Wunused-variable] 88 | struct clone_args args = { | ^~~~ ../../kselftest_harness.h:94:1: warning: control reaches end of non-void function [-Wreturn-type] 94 | } | ^ make[1]: *** [Makefile:38: /pauth/pac] Error 1 make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/pauth' make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/fp' CC fp-ptrace CC fp-stress CC sve-ptrace sve-ptrace.c: In function ‘do_child’: sve-ptrace.c:85:22: warning: too many arguments for format [-Wformat-extra-args] 85 | ksft_exit_fail_msg("PTRACE_TRACEME", strerror(errno)); | ^~~~~~~~~~~~~~~~ sve-ptrace.c:88:22: warning: too many arguments for format [-Wformat-extra-args] 88 | ksft_exit_fail_msg("raise(SIGSTOP)", strerror(errno)); | ^~~~~~~~~~~~~~~~ sve-ptrace.c: In function ‘ptrace_set_sve_get_sve_data’: sve-ptrace.c:343:44: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 343 | ksft_test_result_fail("Error allocating %d byte buffer for %s VL %u\n", | ~^ | | | int | %ld 344 | data_size, type->name, vl); | ~~~~~~~~~ | | | size_t {aka long unsigned int} sve-ptrace.c: In function ‘ptrace_set_sve_get_fpsimd_data’: sve-ptrace.c:444:44: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 444 | ksft_test_result_fail("Error allocating %d byte buffer for %s VL %u\n", | ~^ | | | int | %ld 445 | data_size, type->name, vl); | ~~~~~~~~~ | | | size_t {aka long unsigned int} sve-ptrace.c: In function ‘ptrace_set_fpsimd_get_sve_data’: sve-ptrace.c:548:25: warning: too many arguments for format [-Wformat-extra-args] 548 | ksft_test_result_fail("Child VL != expected VL %d\n", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sve-ptrace.c:558:33: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 558 | ksft_test_result_fail("Read %d bytes, expected %d\n", | ~^ | | | int | %ld 559 | read_sve_size, expected_size); | ~~~~~~~~~~~~~ | | | size_t {aka long unsigned int} sve-ptrace.c:558:52: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 558 | ksft_test_result_fail("Read %d bytes, expected %d\n", | ~^ | | | int | %ld 559 | read_sve_size, expected_size); | ~~~~~~~~~~~~~ | | | size_t {aka long unsigned int} sve-ptrace.c:574:33: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 574 | ksft_test_result_fail("Read %d bytes, expected %d\n", | ~^ | | | int | %ld 575 | read_sve_size, expected_size); | ~~~~~~~~~~~~~ | | | size_t {aka long unsigned int} sve-ptrace.c:574:52: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 574 | ksft_test_result_fail("Read %d bytes, expected %d\n", | ~^ | | | int | %ld 575 | read_sve_size, expected_size); | ~~~~~~~~~~~~~ | | | size_t {aka long unsigned int} gcc -c rdvl.S -o /fp/rdvl.o CC sve-probe-vls CC vec-syscfg gcc -c za-fork-asm.S -o /fp/za-fork-asm.o gcc -fno-asynchronous-unwind-tables -fno-ident -s -Os -nostdlib \ -include ../../../../include/nolibc/nolibc.h -I../..\ -static -ffreestanding -Wall za-fork.c /fp/za-fork-asm.o -o /fp/za-fork CC za-ptrace za-ptrace.c: In function ‘do_child’: za-ptrace.c:51:22: warning: too many arguments for format [-Wformat-extra-args] 51 | ksft_exit_fail_msg("PTRACE_TRACEME", strerror(errno)); | ^~~~~~~~~~~~~~~~ za-ptrace.c:54:22: warning: too many arguments for format [-Wformat-extra-args] 54 | ksft_exit_fail_msg("raise(SIGSTOP)", strerror(errno)); | ^~~~~~~~~~~~~~~~ za-ptrace.c: In function ‘ptrace_set_get_data’: za-ptrace.c:204:44: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘size_t’ {aka ‘long unsigned int’} [-Wformat=] 204 | ksft_test_result_fail("Error allocating %d byte buffer for VL %u\n", | ~^ | | | int | %ld 205 | data_size, vl); | ~~~~~~~~~ | | | size_t {aka long unsigned int} gcc -c asm-utils.S -o /fp/asm-utils.o gcc -nostdlib fp-pidbench.S /fp/asm-utils.o -o /fp/fp-pidbench gcc -nostdlib fpsimd-test.S /fp/asm-utils.o -o /fp/fpsimd-test CC rdvl-sme CC rdvl-sve gcc -nostdlib sve-test.S /fp/asm-utils.o -o /fp/sve-test gcc -DSSVE -nostdlib sve-test.S /fp/asm-utils.o -o /fp/ssve-test gcc -nostdlib za-test.S /fp/asm-utils.o -o /fp/za-test CC zt-ptrace zt-ptrace.c: In function ‘do_child’: zt-ptrace.c:46:22: warning: too many arguments for format [-Wformat-extra-args] 46 | ksft_exit_fail_msg("PTRACE_TRACEME", strerror(errno)); | ^~~~~~~~~~~~~~~~ zt-ptrace.c:49:22: warning: too many arguments for format [-Wformat-extra-args] 49 | ksft_exit_fail_msg("raise(SIGSTOP)", strerror(errno)); | ^~~~~~~~~~~~~~~~ zt-ptrace.c: In function ‘ptrace_enable_za_via_zt’: zt-ptrace.c:233:54: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=] 233 | ksft_print_msg("ZA data less than expected: %u < %u\n", | ~^ | | | unsigned int | %lu gcc -nostdlib zt-test.S /fp/asm-utils.o -o /fp/zt-test CC vlset make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/fp' make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/mte' CC check_prctl check_prctl.c: In function ‘set_tagged_addr_ctrl’: check_prctl.c:19:14: error: ‘PR_SET_TAGGED_ADDR_CTRL’ undeclared (first use in this function) 19 | ret = prctl(PR_SET_TAGGED_ADDR_CTRL, val, 0, 0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ check_prctl.c:19:14: note: each undeclared identifier is reported only once for each function it appears in check_prctl.c: In function ‘get_tagged_addr_ctrl’: check_prctl.c:30:14: error: ‘PR_GET_TAGGED_ADDR_CTRL’ undeclared (first use in this function) 30 | ret = prctl(PR_GET_TAGGED_ADDR_CTRL, 0, 0, 0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ check_prctl.c: In function ‘check_basic_read’: check_prctl.c:51:12: error: ‘PR_MTE_TCF_SYNC’ undeclared (first use in this function) 51 | if (ret & PR_MTE_TCF_SYNC) | ^~~~~~~~~~~~~~~ check_prctl.c:53:12: error: ‘PR_MTE_TCF_ASYNC’ undeclared (first use in this function); did you mean ‘PR_FP_EXC_ASYNC’? 53 | if (ret & PR_MTE_TCF_ASYNC) | ^~~~~~~~~~~~~~~~ | PR_FP_EXC_ASYNC check_prctl.c: In function ‘set_mode_test’: check_prctl.c:84:13: error: ‘PR_MTE_TCF_MASK’ undeclared (first use in this function) 84 | if ((ret & PR_MTE_TCF_MASK) == mask) { | ^~~~~~~~~~~~~~~ check_prctl.c: At top level: check_prctl.c:98:4: error: ‘PR_MTE_TCF_NONE’ undeclared here (not in a function); did you mean ‘R_METAG_NONE’? 98 | { PR_MTE_TCF_NONE, 0, "NONE" }, | ^~~~~~~~~~~~~~~ | R_METAG_NONE check_prctl.c:99:4: error: ‘PR_MTE_TCF_SYNC’ undeclared here (not in a function) 99 | { PR_MTE_TCF_SYNC, HWCAP2_MTE, "SYNC" }, | ^~~~~~~~~~~~~~~ check_prctl.c:99:22: error: ‘HWCAP2_MTE’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 99 | { PR_MTE_TCF_SYNC, HWCAP2_MTE, "SYNC" }, | ^~~~~~~~~~ | HWCAP_SVE check_prctl.c:100:4: error: ‘PR_MTE_TCF_ASYNC’ undeclared here (not in a function); did you mean ‘PR_FP_EXC_ASYNC’? 100 | { PR_MTE_TCF_ASYNC, HWCAP2_MTE, "ASYNC" }, | ^~~~~~~~~~~~~~~~ | PR_FP_EXC_ASYNC In file included from mte_common_util.c:19: mte_common_util.h: In function ‘evaluate_test’: mte_common_util.h:80:3: warning: format not a string literal and no format arguments [-Wformat-security] 80 | ksft_test_result_pass(msg); | ^~~~~~~~~~~~~~~~~~~~~ mte_common_util.h:83:3: warning: format not a string literal and no format arguments [-Wformat-security] 83 | ksft_test_result_fail(msg); | ^~~~~~~~~~~~~~~~~~~~~ mte_common_util.h:86:3: warning: format not a string literal and no format arguments [-Wformat-security] 86 | ksft_test_result_skip(msg); | ^~~~~~~~~~~~~~~~~~~~~ mte_common_util.c: In function ‘mte_default_handler’: mte_common_util.c:41:73: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘long long unsigned int’ [-Wformat=] 41 | ksft_print_msg("Got unexpected SEGV_MTEAERR at pc=$lx, fault addr=%lx\n", | ~~^ | | | long unsigned int | %llx 42 | ((ucontext_t *)uc)->uc_mcontext.pc, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long long unsigned int mte_common_util.c:41:20: warning: too many arguments for format [-Wformat-extra-args] 41 | ksft_print_msg("Got unexpected SEGV_MTEAERR at pc=$lx, fault addr=%lx\n", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mte_common_util.c:67:47: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘long long unsigned int’ [-Wformat=] 67 | ksft_print_msg("INFO: SIGBUS signal at pc=%lx, fault addr=%lx, si_code=%lx\n", | ~~^ | | | long unsigned int | %llx 68 | ((ucontext_t *)uc)->uc_mcontext.pc, addr, si->si_code); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | long long unsigned int mte_common_util.c:67:76: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘int’ [-Wformat=] 67 | ksft_print_msg("INFO: SIGBUS signal at pc=%lx, fault addr=%lx, si_code=%lx\n", | ~~^ | | | long unsigned int | %x 68 | ((ucontext_t *)uc)->uc_mcontext.pc, addr, si->si_code); | ~~~~~~~~~~~ | | | int mte_common_util.c: In function ‘mte_insert_tags’: mte_common_util.c:103:32: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘void *’ [-Wformat=] 103 | ksft_print_msg("FAIL: Addr=%lx: invalid\n", ptr); | ~~^ ~~~ | | | | | void * | long unsigned int | %p mte_common_util.c: In function ‘mte_clear_tags’: mte_common_util.c:115:32: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘void *’ [-Wformat=] 115 | ksft_print_msg("FAIL: Addr=%lx: invalid\n", ptr); | ~~^ ~~~ | | | | | void * | long unsigned int | %p mte_common_util.c: In function ‘mte_switch_mode’: mte_common_util.c:294:7: error: ‘PR_TAGGED_ADDR_ENABLE’ undeclared (first use in this function) 294 | en = PR_TAGGED_ADDR_ENABLE; | ^~~~~~~~~~~~~~~~~~~~~ mte_common_util.c:294:7: note: each undeclared identifier is reported only once for each function it appears in mte_common_util.c:309:12: error: ‘PR_SET_TAGGED_ADDR_CTRL’ undeclared (first use in this function) 309 | if (prctl(PR_SET_TAGGED_ADDR_CTRL, en, 0, 0, 0) != 0) { | ^~~~~~~~~~~~~~~~~~~~~~~ mte_common_util.c: In function ‘mte_default_setup’: mte_common_util.c:327:14: error: ‘PR_GET_TAGGED_ADDR_CTRL’ undeclared (first use in this function) 327 | ret = prctl(PR_GET_TAGGED_ADDR_CTRL, en, 0, 0, 0); | ^~~~~~~~~~~~~~~~~~~~~~~ make[1]: *** [../../lib.mk:211: /mte/check_prctl] Error 1 make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/mte' make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/bti' gcc -mbranch-protection=standard -DBTI=1 -ffreestanding -Wall -Wextra -Wall -O2 -g -I/linux_mainline/tools/testing/selftests/ -I/linux_mainline/tools/include -c -o /bti/test-bti.o test.c test.c: In function ‘handler’: test.c:85:50: error: ‘PSR_BTYPE_MASK’ undeclared (first use in this function); did you mean ‘PSR_MODE_MASK’? 85 | write(1, &"00011011"[((uc->uc_mcontext.pstate & PSR_BTYPE_MASK) | ^~~~~~~~~~~~~~ | PSR_MODE_MASK test.c:85:50: note: each undeclared identifier is reported only once for each function it appears in test.c:86:13: error: ‘PSR_BTYPE_SHIFT’ undeclared (first use in this function) 86 | >> PSR_BTYPE_SHIFT) * 2], 2); | ^~~~~~~~~~~~~~~ test.c: In function ‘start’: test.c:186:14: error: ‘HWCAP_PACA’ undeclared (first use in this function); did you mean ‘HWCAP_USCAT’? 186 | if (hwcap & HWCAP_PACA) | ^~~~~~~~~~ | HWCAP_USCAT test.c:191:15: error: ‘HWCAP2_BTI’ undeclared (first use in this function); did you mean ‘HWCAP_DIT’? 191 | if (hwcap2 & HWCAP2_BTI) { | ^~~~~~~~~~ | HWCAP_DIT make[1]: *** [Makefile:20: /bti/test-bti.o] Error 1 make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/bti' make[1]: Entering directory '/linux_mainline/tools/testing/selftests/arm64/abi' CC hwcap hwcap.c:465:16: error: ‘HWCAP2_CSSC’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 465 | .hwcap_bit = HWCAP2_CSSC, | ^~~~~~~~~~~ | HWCAP_SVE hwcap.c:472:16: error: ‘HWCAP2_F8CVT’ undeclared here (not in a function); did you mean ‘HWCAP_JSCVT’? 472 | .hwcap_bit = HWCAP2_F8CVT, | ^~~~~~~~~~~~ | HWCAP_JSCVT hwcap.c:479:16: error: ‘HWCAP2_F8DP4’ undeclared here (not in a function); did you mean ‘HWCAP_FPHP’? 479 | .hwcap_bit = HWCAP2_F8DP4, | ^~~~~~~~~~~~ | HWCAP_FPHP hwcap.c:486:16: error: ‘HWCAP2_F8DP2’ undeclared here (not in a function); did you mean ‘HWCAP_FPHP’? 486 | .hwcap_bit = HWCAP2_F8DP2, | ^~~~~~~~~~~~ | HWCAP_FPHP hwcap.c:493:16: error: ‘HWCAP2_F8E5M2’ undeclared here (not in a function) 493 | .hwcap_bit = HWCAP2_F8E5M2, | ^~~~~~~~~~~~~ hwcap.c:499:16: error: ‘HWCAP2_F8E4M3’ undeclared here (not in a function); did you mean ‘HWCAP_FLAGM’? 499 | .hwcap_bit = HWCAP2_F8E4M3, | ^~~~~~~~~~~~~ | HWCAP_FLAGM hwcap.c:505:16: error: ‘HWCAP2_F8FMA’ undeclared here (not in a function); did you mean ‘HWCAP_FCMA’? 505 | .hwcap_bit = HWCAP2_F8FMA, | ^~~~~~~~~~~~ | HWCAP_FCMA hwcap.c:512:16: error: ‘HWCAP2_FAMINMAX’ undeclared here (not in a function) 512 | .hwcap_bit = HWCAP2_FAMINMAX, | ^~~~~~~~~~~~~~~ hwcap.c:526:16: error: ‘HWCAP2_FPMR’ undeclared here (not in a function); did you mean ‘HWCAP_FPHP’? 526 | .hwcap_bit = HWCAP2_FPMR, | ^~~~~~~~~~~ | HWCAP_FPHP hwcap.c:555:16: error: ‘HWCAP2_LRCPC3’ undeclared here (not in a function); did you mean ‘HWCAP_LRCPC’? 555 | .hwcap_bit = HWCAP2_LRCPC3, | ^~~~~~~~~~~~~ | HWCAP_LRCPC hwcap.c:578:16: error: ‘HWCAP2_LSE128’ undeclared here (not in a function); did you mean ‘HWCAP_SHA2’? 578 | .hwcap_bit = HWCAP2_LSE128, | ^~~~~~~~~~~~~ | HWCAP_SHA2 hwcap.c:585:16: error: ‘HWCAP2_LUT’ undeclared here (not in a function); did you mean ‘HWCAP_DIT’? 585 | .hwcap_bit = HWCAP2_LUT, | ^~~~~~~~~~ | HWCAP_DIT hwcap.c:592:16: error: ‘HWCAP2_MOPS’ undeclared here (not in a function); did you mean ‘HWCAP_FP’? 592 | .hwcap_bit = HWCAP2_MOPS, | ^~~~~~~~~~~ | HWCAP_FP hwcap.c:607:16: error: ‘HWCAP2_RNG’ undeclared here (not in a function) 607 | .hwcap_bit = HWCAP2_RNG, | ^~~~~~~~~~ hwcap.c:614:16: error: ‘HWCAP2_RPRFM’ undeclared here (not in a function) 614 | .hwcap_bit = HWCAP2_RPRFM, | ^~~~~~~~~~~~ hwcap.c:641:16: error: ‘HWCAP2_SME’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 641 | .hwcap_bit = HWCAP2_SME, | ^~~~~~~~~~ | HWCAP_SVE hwcap.c:649:16: error: ‘HWCAP2_SME2’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 649 | .hwcap_bit = HWCAP2_SME2, | ^~~~~~~~~~~ | HWCAP_SVE hwcap.c:657:16: error: ‘HWCAP2_SME2P1’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 657 | .hwcap_bit = HWCAP2_SME2P1, | ^~~~~~~~~~~~~ | HWCAP_SVE hwcap.c:664:16: error: ‘HWCAP2_SME_I16I32’ undeclared here (not in a function) 664 | .hwcap_bit = HWCAP2_SME_I16I32, | ^~~~~~~~~~~~~~~~~ hwcap.c:671:16: error: ‘HWCAP2_SME_BI32I32’ undeclared here (not in a function) 671 | .hwcap_bit = HWCAP2_SME_BI32I32, | ^~~~~~~~~~~~~~~~~~ hwcap.c:678:16: error: ‘HWCAP2_SME_B16B16’ undeclared here (not in a function) 678 | .hwcap_bit = HWCAP2_SME_B16B16, | ^~~~~~~~~~~~~~~~~ hwcap.c:685:16: error: ‘HWCAP2_SME_F16F16’ undeclared here (not in a function) 685 | .hwcap_bit = HWCAP2_SME_F16F16, | ^~~~~~~~~~~~~~~~~ hwcap.c:692:16: error: ‘HWCAP2_SME_F8F16’ undeclared here (not in a function) 692 | .hwcap_bit = HWCAP2_SME_F8F16, | ^~~~~~~~~~~~~~~~ hwcap.c:699:16: error: ‘HWCAP2_SME_F8F32’ undeclared here (not in a function) 699 | .hwcap_bit = HWCAP2_SME_F8F32, | ^~~~~~~~~~~~~~~~ hwcap.c:706:16: error: ‘HWCAP2_SME_LUTV2’ undeclared here (not in a function) 706 | .hwcap_bit = HWCAP2_SME_LUTV2, | ^~~~~~~~~~~~~~~~ hwcap.c:713:16: error: ‘HWCAP2_SME_SF8FMA’ undeclared here (not in a function) 713 | .hwcap_bit = HWCAP2_SME_SF8FMA, | ^~~~~~~~~~~~~~~~~ hwcap.c:720:16: error: ‘HWCAP2_SME_SF8DP2’ undeclared here (not in a function) 720 | .hwcap_bit = HWCAP2_SME_SF8DP2, | ^~~~~~~~~~~~~~~~~ hwcap.c:727:16: error: ‘HWCAP2_SME_SF8DP4’ undeclared here (not in a function) 727 | .hwcap_bit = HWCAP2_SME_SF8DP4, | ^~~~~~~~~~~~~~~~~ hwcap.c:742:16: error: ‘HWCAP2_SVE2’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 742 | .hwcap_bit = HWCAP2_SVE2, | ^~~~~~~~~~~ | HWCAP_SVE hwcap.c:749:16: error: ‘HWCAP2_SVE2P1’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 749 | .hwcap_bit = HWCAP2_SVE2P1, | ^~~~~~~~~~~~~ | HWCAP_SVE hwcap.c:756:16: error: ‘HWCAP2_SVEAES’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 756 | .hwcap_bit = HWCAP2_SVEAES, | ^~~~~~~~~~~~~ | HWCAP_SVE hwcap.c:763:16: error: ‘HWCAP2_SVE_B16B16’ undeclared here (not in a function) 763 | .hwcap_bit = HWCAP2_SVE_B16B16, | ^~~~~~~~~~~~~~~~~ hwcap.c:770:16: error: ‘HWCAP2_SVEPMULL’ undeclared here (not in a function); did you mean ‘HWCAP_PMULL’? 770 | .hwcap_bit = HWCAP2_SVEPMULL, | ^~~~~~~~~~~~~~~ | HWCAP_PMULL hwcap.c:777:16: error: ‘HWCAP2_SVEBITPERM’ undeclared here (not in a function) 777 | .hwcap_bit = HWCAP2_SVEBITPERM, | ^~~~~~~~~~~~~~~~~ hwcap.c:784:16: error: ‘HWCAP2_SVESHA3’ undeclared here (not in a function); did you mean ‘HWCAP_SHA3’? 784 | .hwcap_bit = HWCAP2_SVESHA3, | ^~~~~~~~~~~~~~ | HWCAP_SHA3 hwcap.c:791:16: error: ‘HWCAP2_SVESM4’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 791 | .hwcap_bit = HWCAP2_SVESM4, | ^~~~~~~~~~~~~ | HWCAP_SVE hwcap.c:798:16: error: ‘HWCAP2_SVEI8MM’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 798 | .hwcap_bit = HWCAP2_SVEI8MM, | ^~~~~~~~~~~~~~ | HWCAP_SVE hwcap.c:805:16: error: ‘HWCAP2_SVEF32MM’ undeclared here (not in a function) 805 | .hwcap_bit = HWCAP2_SVEF32MM, | ^~~~~~~~~~~~~~~ hwcap.c:812:16: error: ‘HWCAP2_SVEF64MM’ undeclared here (not in a function) 812 | .hwcap_bit = HWCAP2_SVEF64MM, | ^~~~~~~~~~~~~~~ hwcap.c:819:16: error: ‘HWCAP2_SVEBF16’ undeclared here (not in a function); did you mean ‘HWCAP_SVE’? 819 | .hwcap_bit = HWCAP2_SVEBF16, | ^~~~~~~~~~~~~~ | HWCAP_SVE hwcap.c:826:16: error: ‘HWCAP2_SVE_EBF16’ undeclared here (not in a function) 826 | .hwcap_bit = HWCAP2_SVE_EBF16, | ^~~~~~~~~~~~~~~~ hwcap.c:832:16: error: ‘HWCAP2_HBC’ undeclared here (not in a function); did you mean ‘HWCAP_SB’? 832 | .hwcap_bit = HWCAP2_HBC, | ^~~~~~~~~~ | HWCAP_SB make[1]: *** [../../lib.mk:211: /abi/hwcap] Error 1 make[1]: Leaving directory '/linux_mainline/tools/testing/selftests/arm64/abi' make: *** [Makefile:28: all] Error 2