https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113728
Bug ID: 113728 Summary: libasan uses incorrect prctl prototype Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: sanitizer Assignee: unassigned at gcc dot gnu.org Reporter: fw at gcc dot gnu.org CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org, jakub at gcc dot gnu.org, kcc at gcc dot gnu.org Target Milestone: --- Target: powerpc64le-linux-gnu The prctl function in glibc is variadic, but the internal prototype used by libasan has a fixed argument list. This causes crashes on powerpc64le-linux-gnu with current glibc because the glibc implementation is variadic as well, it uses <stdarg.h>. Older glibc uses an assembler implementation which does not bother with variadic arguments. For variadic function calls, it's the caller's responsibility to set up the parameter save area, but that does not happen if function prototype is incorrect and non-variadic. I'll try to get this worked around in glibc, but I couldn't get my ABI regression fix applied the first time I posted it. The libasan library isn't the first application impacted by the prctl ABI change.