From c2c29d6e9cef10d21a8d0c94f3dc7a49d25e2159 Mon Sep 17 00:00:00 2001 From: Matheus Date: Sun, 8 Mar 2026 14:47:52 -0300 Subject: [PATCH] kernel: change base load addresses of pie elves and mmap --- kernel-src/sys/elf.c | 2 +- kernel-src/sys/syscalls/mmap.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel-src/sys/elf.c b/kernel-src/sys/elf.c index 6d7c142e..b8221987 100644 --- a/kernel-src/sys/elf.c +++ b/kernel-src/sys/elf.c @@ -154,7 +154,7 @@ int elf_load(vnode_t *vnode, void *base, void **entry, char **interpreter, auxv6 return ENOEXEC; if (!base && header.type == ELF_SHARED) { - base = (void *)0x400000; + base = (void *)0x40000000000; } auxv64->null.type = AT_NULL; diff --git a/kernel-src/sys/syscalls/mmap.c b/kernel-src/sys/syscalls/mmap.c index 88ed06d5..e7255f43 100644 --- a/kernel-src/sys/syscalls/mmap.c +++ b/kernel-src/sys/syscalls/mmap.c @@ -106,7 +106,7 @@ syscallret_t syscall_mmap(context_t *context, void *hint, size_t len, int prot, } if (hint < USERSPACE_START) - hint = USERSPACE_START; + hint = USERSPACE_MMAP_START; ret.ret = (uint64_t)vmm_map(hint, len, vmmflags, mmuflags, &vfd); if (ret.ret == 0)