Fedora Account System
Red Hat Associate
Red Hat Customer
GCC on s390x fails to compile the latest AFL. Reproducible: Always Steps to Reproduce: 1. Compile american-fuzzy-lop 4.33c on s390x Actual Results: Fails, see log attached.
gcc -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=z13 -mtune=z14 -fasynchronous-unwind-tables -fstack-clash-protection -g -Wno-pointer-sign -Wno-variadic-macros -Wall -Wextra -Wno-pointer-arith -fPIC -I include/ -DAFL_PATH=\"/usr/lib64/afl\" -DBIN_PATH=\"/usr/bin\" -DDOC_PATH=\"/usr/share/doc/american-fuzzy-lop\" -flto src/afl-fuzz-bitmap.c src/afl-fuzz-cmplog.c src/afl-fuzz-extras.c src/afl-fuzz-init.c src/afl-fuzz-mutators.c src/afl-fuzz-one.c src/afl-fuzz-python.c src/afl-fuzz-queue.c src/afl-fuzz-redqueen.c src/afl-fuzz-run.c src/afl-fuzz-sanfuzz.c src/afl-fuzz-skipdet.c src/afl-fuzz-state.c src/afl-fuzz-stats.c src/afl-fuzz-statsd.c src/afl-fuzz.c src/afl-common.o src/afl-sharedmem.o src/afl-forkserver.o src/afl-performance.o -o afl-fuzz -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -ldl -lrt -lm -lm src/afl-fuzz-run.c: In function ‘check_sync_fuzzers’: src/afl-fuzz-run.c:809:11: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 809 | write(max_fd, &max_start_id, sizeof(u32)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/afl-fuzz-run.c: In function ‘sync_fuzzers’: src/afl-fuzz-run.c:985:7: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 985 | read(max_fd, &max_start_id, sizeof(u32)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘read’, inlined from ‘main’ at src/afl-fuzz.c:2827:7: /usr/include/bits/unistd.h:32:10: warning: ‘__read_alias’ writing 96 bytes into a region of size 1 overflows the destination [-Wstringop-overflow=] 32 | return __glibc_fortify (read, __nbytes, sizeof (char), | ^ include/afl-fuzz.h: In function ‘main’: include/afl-fuzz.h:213:6: note: destination object ‘colorized’ of size 1 213 | u8 colorized, /* Do not run redqueen stage again */ | ^ /usr/include/bits/unistd-decl.h:29:16: note: in a call to function ‘__read_alias’ declared with attribute ‘access (write_only, 2, 3)’ 29 | extern ssize_t __REDIRECT_FORTIFY (__read_alias, (int __fd, void *__buf, | ^ In function ‘read’, inlined from ‘main’ at src/afl-fuzz.c:2827:7: /usr/include/bits/unistd.h:32:10: warning: ‘__read_chk’ writing 96 bytes into a region of size 1 overflows the destination [-Wstringop-overflow=] 32 | return __glibc_fortify (read, __nbytes, sizeof (char), | ^ include/afl-fuzz.h: In function ‘main’: include/afl-fuzz.h:213:6: note: destination object ‘colorized’ of size 1 213 | u8 colorized, /* Do not run redqueen stage again */ | ^ /usr/include/bits/unistd-decl.h:26:16: note: in a call to function ‘__read_chk’ declared with attribute ‘access (write_only, 2, 3)’ 26 | extern ssize_t __read_chk (int __fd, void *__buf, size_t __nbytes, | ^ *** WARNING *** there are active plugins, do not report this as a bug unless you can reproduce it without enabling any plugins. Event | Plugins PLUGIN_FINISH_UNIT | annobin: Generate final annotations PLUGIN_START_UNIT | annobin: Generate global annotations PLUGIN_ALL_PASSES_START | annobin: Generate per-function annotations PLUGIN_ALL_PASSES_END | annobin: Register per-function end symbols during RTL pass: final src/afl-fuzz-redqueen.c: In function ‘input_to_state_stage’: src/afl-fuzz-redqueen.c:3292:1: internal compiler error: in print_addrstyle_operand, at config/s390/s390.cc:8312 3292 | } | ^ Please submit a full bug report, with preprocessed source. See <http://bugzilla.redhat.com/bugzilla> for instructions. {standard input}: Assembler messages: {standard input}:18852: Warning: end of file not at end of a line; newline inserted {standard input}:18907: Error: operand 3: missing displacement operand {standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive make[1]: *** [/tmp/ccLj72hF.mk:6: /tmp/ccdXu8za.ltrans2.ltrans.o] Error 1 lto-wrapper: fatal error: make returned 2 exit status compilation terminated. /usr/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status
Created attachment 2095591 [details] build.log build.log file from Koji build Unfortunately as I don't have easy access to an s390x system, it is difficult for me to provide the requested information.
Latest AFL is here: https://src.fedoraproject.org/rpms/american-fuzzy-lop/c/c4c909cf0a9a19e6566ee9b18f179bca2cb4a0fc?branch=rawhide You'll have to reenable s390x in the list of arches, but apart from that it should reproduce simply by recompiling in Rawhide.
FEDORA-2025-0941ac74a4 (american-fuzzy-lop-4.33c-1.fc43) has been submitted as an update to Fedora 43. https://bodhi.fedoraproject.org/updates/FEDORA-2025-0941ac74a4
FEDORA-2025-0941ac74a4 (american-fuzzy-lop-4.33c-1.fc43) has been pushed to the Fedora 43 stable repository. If problem still persists, please make note of it in this bug report.
This bug appears to have been reported against 'rawhide' during the Fedora Linux 45 development cycle. Changing version to 45.