Public bug reported: Issue found on j/xilinx 5.15.0-1043.47 since sru-20250113
This issue can only be found with j/xilinx. j/linux ARM64 does not have this issue. Wei-Lin found some discussion on the Internet: https://lists.freebsd.org/archives/freebsd-arm/2023-April/002487.html https://github.com/llvm/llvm-project/issues/63483 This rings a bell that we should probably check the version of g++, and investigation shows we are using 11.4.0-1ubuntu1~22.04 on j/linux but 11.3.0-1ubuntu1~22.04 was used on j/xilinx. Test output: Running test: './test-apparmor.py' distro: 'Ubuntu 22.04' kernel: '5.15.0-1043.47 (Ubuntu 5.15.0-1043.47-xilinx-zynqmp 5.15.173)' arch: 'arm64' init: 'systemd' uid: 0/0 SUDO_USER: 'ubuntu') test_parser_testsuite (__main__.ApparmorTestsuites) Skipping private tests Run parser regression tests ... (Applying patch 0001-tests-regression-apparmor-syscall.sh-fail-iopl-ioper.patch) (Applying patch 0001-tests-regression-apparmor-capabilities.sh-fail-iopl-.patch) (Applying patch tests-fix-variable-type-for-getopt.patch) (Applying patch tests-parse-result-of-multiple-lines-in-output.patch) (Applying patch utils-fix-aa-notify-last-login-test-3.0.patch) FAIL ====================================================================== FAIL: test_parser_testsuite (__main__.ApparmorTestsuites) Run parser regression tests ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/ubuntu/autotest/client/tmp/ubuntu_qrt_apparmor/src/qa-regression-testing/scripts/./test-apparmor.py", line 2366, in test_parser_testsuite self.assertEqual(expected, rc, result + report) AssertionError: 0 != 2 : Got exit code 2, expected 0 g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_common.o parser_common.c preparing apparmor_3.0.4-2ubuntu2.4.dsc... done g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_include.o parser_include.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_interface.o parser_interface.c bison -d --define=parse.error=verbose -o parser_yacc.c parser_yacc.y flex -B -v --noyy_top_state -oparser_lex.c parser_lex.l flex version 2.6.4 usage statistics: scanner options: -svB8 -Cem -oparser_lex.c 1230/2000 NFA states 522/1000 DFA states (5511 words) 84 rules Compressed tables always back-up 23/40 start conditions 647 epsilon states, 474 double epsilon states 133/200 character classes needed 4635/4750 words of storage, 0 reused 22106 state/nextstate pairs created 2372/19734 unique/duplicate transitions 633/1000 base-def entries created 4027/6000 (peak 8154) nxt-chk entries created 2220/7500 (peak 6216) template nxt-chk entries created 373 empty table entries 126 protos created 111 templates created, 277 uses 56/256 equivalence classes created 20/256 meta-equivalence classes created 0 (72 saved) hash collisions, 1897 DFAs equal 22 sets of reallocations needed 9632 total table entries needed g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_lex.o parser_lex.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_main.o parser_main.c ../common/list_capabilities.sh | LC_ALL=C sed -n -e "s/[ \\t]\\?CAP_\\([A-Z0-9_]\\+\\)/\{\"\\L\\1\", \\UCAP_\\1, NO_BACKMAP_CAP, CAPFLAG_BASE_FEATURE\},\\n/pg" > generated_cap_names.h g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_misc.o parser_misc.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_merge.o parser_merge.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_symtab.o parser_symtab.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_yacc.o parser_yacc.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_regex.o parser_regex.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_variable.o parser_variable.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_policy.o parser_policy.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_alias.o parser_alias.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o common_optarg.o common_optarg.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o lib.o lib.c ../common/list_af_names.sh > generated_af_names.h cat base_af_names.h | diff -u - generated_af_names.h | grep -v '^.AF_MAX' | grep '^\+[^+]' ; \ if [ $? -eq 1 ] ; then \ cat base_af_names.h | LC_ALL=C sed -n -e 's/[ \t]\?AF_MAX[ \t]\+[0-9]\+,//g' -e 's/[ \t]\+\?AF_\([A-Z0-9_]\+\)[ \t]\+\([0-9]\+\),/#ifndef AF_\1\n# define AF_\1 \2\n#endif\nAA_GEN_NET_ENT("\L\1", \UAF_\1)\n/pg' > af_names.h ; \ cat base_af_names.h | LC_ALL=C sed -n -e 's/AF_MAX[ \t]\+\([0-9]\+\),\?.*/\n#define AA_AF_MAX \1\n/p' >> af_names.h ; \ else \ echo "Error: new AF names detected; please update base_af_names.h with values from generated_af_names.h" ; \ exit 1 ; \ fi g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o network.o network.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o mount.o mount.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o dbus.o dbus.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o profile.o profile.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o rule.o rule.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o signal.o signal.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o ptrace.o ptrace.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o af_rule.o af_rule.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o af_unix.o af_unix.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o policy_cache.o policy_cache.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o default_features.o default_features.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o mqueue.o mqueue.cc make -C libapparmor_re CFLAGS="-g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x" make[1]: Entering directory '/tmp/testlibi8w_hg38/source/jammy/apparmor-3.0.4/parser/libapparmor_re' bison -o parse.cc parse.y parse.y:63.1-21: warning: deprecated directive: ‘%name-prefix "regex_"’, use ‘%define api.prefix {regex_}’ [-Wdeprecated] 63 | %name-prefix "regex_" | ^~~~~~~~~~~~~~~~~~~~~ | %define api.prefix {regex_} parse.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o parse.o parse.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o expr-tree.o expr-tree.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o hfa.o hfa.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o chfa.o chfa.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o aare_rules.o aare_rules.cc ar -rcs libapparmor_re.a parse.o expr-tree.o hfa.o chfa.o aare_rules.o make[1]: Leaving directory '/tmp/testlibi8w_hg38/source/jammy/apparmor-3.0.4/parser/libapparmor_re' g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -o apparmor_parser parser_common.o parser_include.o parser_interface.o parser_lex.o parser_main.o parser_misc.o parser_merge.o parser_symtab.o parser_yacc.o parser_regex.o parser_variable.o parser_policy.o parser_alias.o common_optarg.o lib.o network.o mount.o dbus.o profile.o rule.o signal.o ptrace.o af_rule.o af_unix.o policy_cache.o default_features.o mqueue.o \ libapparmor_re/libapparmor_re.a -static-libgcc -static-libstdc++ -L. -Wl,-Bstatic -lapparmor -Wl,-Bdynamic -lpthread /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/libapparmor.a(private.o): in function `atomic_inc': (.text+0x4d0): undefined reference to `__aarch64_ldadd4_sync' /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/libapparmor.a(private.o): in function `atomic_dec_and_test': (.text+0x4f0): undefined reference to `__aarch64_ldadd4_sync' collect2: error: ld returned 1 exit status make: *** [Makefile:215: apparmor_parser] Error 1 ** Affects: ubuntu-kernel-tests Importance: Undecided Assignee: Po-Hsu Lin (cypressyew) Status: In Progress ** Tags: 5.15 jammy sru-20250113 sru-20250210 ubuntu-qrt-apparmor ** Changed in: ubuntu-kernel-tests Assignee: (unassigned) => Po-Hsu Lin (cypressyew) ** Changed in: ubuntu-kernel-tests Status: New => In Progress -- You received this bug notification because you are a member of Canonical Platform QA Team, which is subscribed to ubuntu-kernel-tests. https://bugs.launchpad.net/bugs/2103671 Title: test_parser_testsuite in ubuntu_qrt_apparmor failed to build on J/xilinx Status in ubuntu-kernel-tests: In Progress Bug description: Issue found on j/xilinx 5.15.0-1043.47 since sru-20250113 This issue can only be found with j/xilinx. j/linux ARM64 does not have this issue. Wei-Lin found some discussion on the Internet: https://lists.freebsd.org/archives/freebsd-arm/2023-April/002487.html https://github.com/llvm/llvm-project/issues/63483 This rings a bell that we should probably check the version of g++, and investigation shows we are using 11.4.0-1ubuntu1~22.04 on j/linux but 11.3.0-1ubuntu1~22.04 was used on j/xilinx. Test output: Running test: './test-apparmor.py' distro: 'Ubuntu 22.04' kernel: '5.15.0-1043.47 (Ubuntu 5.15.0-1043.47-xilinx-zynqmp 5.15.173)' arch: 'arm64' init: 'systemd' uid: 0/0 SUDO_USER: 'ubuntu') test_parser_testsuite (__main__.ApparmorTestsuites) Skipping private tests Run parser regression tests ... (Applying patch 0001-tests-regression-apparmor-syscall.sh-fail-iopl-ioper.patch) (Applying patch 0001-tests-regression-apparmor-capabilities.sh-fail-iopl-.patch) (Applying patch tests-fix-variable-type-for-getopt.patch) (Applying patch tests-parse-result-of-multiple-lines-in-output.patch) (Applying patch utils-fix-aa-notify-last-login-test-3.0.patch) FAIL ====================================================================== FAIL: test_parser_testsuite (__main__.ApparmorTestsuites) Run parser regression tests ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/ubuntu/autotest/client/tmp/ubuntu_qrt_apparmor/src/qa-regression-testing/scripts/./test-apparmor.py", line 2366, in test_parser_testsuite self.assertEqual(expected, rc, result + report) AssertionError: 0 != 2 : Got exit code 2, expected 0 g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_common.o parser_common.c preparing apparmor_3.0.4-2ubuntu2.4.dsc... done g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_include.o parser_include.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_interface.o parser_interface.c bison -d --define=parse.error=verbose -o parser_yacc.c parser_yacc.y flex -B -v --noyy_top_state -oparser_lex.c parser_lex.l flex version 2.6.4 usage statistics: scanner options: -svB8 -Cem -oparser_lex.c 1230/2000 NFA states 522/1000 DFA states (5511 words) 84 rules Compressed tables always back-up 23/40 start conditions 647 epsilon states, 474 double epsilon states 133/200 character classes needed 4635/4750 words of storage, 0 reused 22106 state/nextstate pairs created 2372/19734 unique/duplicate transitions 633/1000 base-def entries created 4027/6000 (peak 8154) nxt-chk entries created 2220/7500 (peak 6216) template nxt-chk entries created 373 empty table entries 126 protos created 111 templates created, 277 uses 56/256 equivalence classes created 20/256 meta-equivalence classes created 0 (72 saved) hash collisions, 1897 DFAs equal 22 sets of reallocations needed 9632 total table entries needed g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_lex.o parser_lex.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_main.o parser_main.c ../common/list_capabilities.sh | LC_ALL=C sed -n -e "s/[ \\t]\\?CAP_\\([A-Z0-9_]\\+\\)/\{\"\\L\\1\", \\UCAP_\\1, NO_BACKMAP_CAP, CAPFLAG_BASE_FEATURE\},\\n/pg" > generated_cap_names.h g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_misc.o parser_misc.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_merge.o parser_merge.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_symtab.o parser_symtab.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_yacc.o parser_yacc.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_regex.o parser_regex.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_variable.o parser_variable.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_policy.o parser_policy.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o parser_alias.o parser_alias.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o common_optarg.o common_optarg.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o lib.o lib.c ../common/list_af_names.sh > generated_af_names.h cat base_af_names.h | diff -u - generated_af_names.h | grep -v '^.AF_MAX' | grep '^\+[^+]' ; \ if [ $? -eq 1 ] ; then \ cat base_af_names.h | LC_ALL=C sed -n -e 's/[ \t]\?AF_MAX[ \t]\+[0-9]\+,//g' -e 's/[ \t]\+\?AF_\([A-Z0-9_]\+\)[ \t]\+\([0-9]\+\),/#ifndef AF_\1\n# define AF_\1 \2\n#endif\nAA_GEN_NET_ENT("\L\1", \UAF_\1)\n/pg' > af_names.h ; \ cat base_af_names.h | LC_ALL=C sed -n -e 's/AF_MAX[ \t]\+\([0-9]\+\),\?.*/\n#define AA_AF_MAX \1\n/p' >> af_names.h ; \ else \ echo "Error: new AF names detected; please update base_af_names.h with values from generated_af_names.h" ; \ exit 1 ; \ fi g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o network.o network.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o mount.o mount.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o dbus.o dbus.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o profile.o profile.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o rule.o rule.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o signal.o signal.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o ptrace.o ptrace.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o af_rule.o af_rule.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o af_unix.o af_unix.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o policy_cache.o policy_cache.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o default_features.o default_features.c g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -c -o mqueue.o mqueue.cc make -C libapparmor_re CFLAGS="-g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x" make[1]: Entering directory '/tmp/testlibi8w_hg38/source/jammy/apparmor-3.0.4/parser/libapparmor_re' bison -o parse.cc parse.y parse.y:63.1-21: warning: deprecated directive: ‘%name-prefix "regex_"’, use ‘%define api.prefix {regex_}’ [-Wdeprecated] 63 | %name-prefix "regex_" | ^~~~~~~~~~~~~~~~~~~~~ | %define api.prefix {regex_} parse.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother] g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o parse.o parse.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o expr-tree.o expr-tree.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o hfa.o hfa.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o chfa.o chfa.cc g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -c -o aare_rules.o aare_rules.cc ar -rcs libapparmor_re.a parse.o expr-tree.o hfa.o chfa.o aare_rules.o make[1]: Leaving directory '/tmp/testlibi8w_hg38/source/jammy/apparmor-3.0.4/parser/libapparmor_re' g++ -g -O2 -pipe -D_GNU_SOURCE -Wall -Wall -Wsign-compare -Wmissing-field-initializers -Wformat -Wformat-security -Wunused-parameter -Wimplicit-fallthrough -std=gnu++0x -DHAVE_REALLOCARRAY=1 -DPACKAGE=\"apparmor-parser\" -DLOCALEDIR=\"/usr/share/locale\" -o apparmor_parser parser_common.o parser_include.o parser_interface.o parser_lex.o parser_main.o parser_misc.o parser_merge.o parser_symtab.o parser_yacc.o parser_regex.o parser_variable.o parser_policy.o parser_alias.o common_optarg.o lib.o network.o mount.o dbus.o profile.o rule.o signal.o ptrace.o af_rule.o af_unix.o policy_cache.o default_features.o mqueue.o \ libapparmor_re/libapparmor_re.a -static-libgcc -static-libstdc++ -L. -Wl,-Bstatic -lapparmor -Wl,-Bdynamic -lpthread /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/libapparmor.a(private.o): in function `atomic_inc': (.text+0x4d0): undefined reference to `__aarch64_ldadd4_sync' /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/11/../../../aarch64-linux-gnu/libapparmor.a(private.o): in function `atomic_dec_and_test': (.text+0x4f0): undefined reference to `__aarch64_ldadd4_sync' collect2: error: ld returned 1 exit status make: *** [Makefile:215: apparmor_parser] Error 1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/2103671/+subscriptions -- Mailing list: https://launchpad.net/~canonical-ubuntu-qa Post to : canonical-ubuntu-qa@lists.launchpad.net Unsubscribe : https://launchpad.net/~canonical-ubuntu-qa More help : https://help.launchpad.net/ListHelp