Skip to content

configure: the musl guard for PR_SET_VMA_ANON_NAME tests an unset variable #159885

Closed as not planned

Description

@serhiy-storchaka

gh-143730 disabled the PR_SET_VMA_ANON_NAME check on musl, but the guard tests a variable
that is never set:

configure.ac:6009:AS_IF([test "$ac_cv_libc" != musl], [

ac_cv_libc appears nowhere else, so the check always runs.

On x86_64 musl this goes unnoticed, because the conftest fails to compile anyway and the macro
stays undefined. On i686 musl it compiles, _Py_HAVE_PR_SET_VMA_ANON_NAME gets defined, and the
build then fails on the conflict the guard was meant to avoid:

In file included from ../Include/internal/pycore_mmap.h:16, from ../Objects/obmalloc.c:5:
/usr/include/sys/prctl.h:88:8: error: redefinition of 'struct prctl_mm_map'
/usr/include/linux/prctl.h:134:8: note: originally defined here

Workaround: ./configure ac_cv_have_decl_PR_SET_VMA_ANON_NAME=no.

3.14 is unaffected (no pycore_mmap.h).

Linked PRs

Activity

  1. added
    3.15bugs and security fixes
    3.16new features, bugs and security fixes
    on Oct 20, 2026
  2. NekoAsakura commented on Oct 20, 2026

    @NekoAsakura
    Member

    Duplicate of #143632?

  3. added
    type-bugAn unexpected behavior, bug, or error
    buildThe build process and cross-build
    on Oct 20, 2026
  4. serhiy-storchaka commented on Oct 20, 2026

    @serhiy-storchaka
    MemberAuthor

    Yes, duplicate of #143632 — sorry, I missed that it was still open. Closing; I have posted the analysis there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.15bugs and security fixes3.16new features, bugs and security fixesbuildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions