2017-03-27 23:09:09 +02:00

20 lines
336 B
C

#include <syscall.h>
#include <scheduler.h>
#include <debug.h>
SYSCALL_DEF(brk)
{
SYSCALL_INIT(uint64_t, addr);
procmm_area_t *brk = get_current_process()->mmap->brk;
if(addr)
{
size_t len = addr - brk->start;
procmm_resize(get_current_process(), brk, len);
return brk->end;
} else {
return brk->end;
}
}