aboutsummaryrefslogtreecommitdiff
path: root/pk/mmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'pk/mmap.c')
-rw-r--r--pk/mmap.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/pk/mmap.c b/pk/mmap.c
index dd0fe59..8f9a281 100644
--- a/pk/mmap.c
+++ b/pk/mmap.c
@@ -433,13 +433,8 @@ uintptr_t do_mmap(uintptr_t addr, size_t length, int prot, int flags, int fd, of
uintptr_t __do_brk(size_t addr)
{
uintptr_t newbrk = addr;
- if (addr < current.brk_min)
- newbrk = current.brk_min;
- else if (addr > current.brk_max)
- newbrk = current.brk_max;
-
- if (current.brk == 0)
- current.brk = ROUNDUP(current.brk_min, RISCV_PGSIZE);
+ if (addr < current.brk_min || addr > current.brk_max)
+ return current.brk;
uintptr_t newbrk_page = ROUNDUP(newbrk, RISCV_PGSIZE);
if (current.brk > newbrk_page) {