Browse Source

hurd: Disable Prefer_MAP_32BIT_EXEC on non-x86_64 for now

While we could support it on any architecture, the tunable is currently
only defined on x86_64.

Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-ID: <20240323173301.151066-5-bugaevc@gmail.com>
master
Sergey Bugaev 2 years ago
committed by Samuel Thibault
parent
commit
6afeac1289
  1. 2
      sysdeps/mach/hurd/dl-sysdep.c
  2. 2
      sysdeps/mach/hurd/mmap.c

2
sysdeps/mach/hurd/dl-sysdep.c

@ -457,7 +457,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
if (prot & PROT_EXEC)
vmprot |= VM_PROT_EXECUTE;
#ifdef __LP64__
#ifdef __x86_64__
if ((addr == NULL) && (prot & PROT_EXEC)
&& HAS_ARCH_FEATURE (Prefer_MAP_32BIT_EXEC))
flags |= MAP_32BIT;

2
sysdeps/mach/hurd/mmap.c

@ -60,7 +60,7 @@ __mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset)
copy = ! (flags & MAP_SHARED);
anywhere = ! (flags & MAP_FIXED);
#ifdef __LP64__
#ifdef __x86_64__
if ((addr == NULL) && (prot & PROT_EXEC)
&& HAS_ARCH_FEATURE (Prefer_MAP_32BIT_EXEC))
flags |= MAP_32BIT;

Loading…
Cancel
Save