diff options
Diffstat (limited to 'src/uapi/mem.c')
| -rw-r--r-- | src/uapi/mem.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/uapi/mem.c b/src/uapi/mem.c index 5c18797..561b5eb 100644 --- a/src/uapi/mem.c +++ b/src/uapi/mem.c @@ -100,6 +100,9 @@ SYSCALL_DEFINE3(req_pmem)(struct tcb *t, sys_arg_t paddr, sys_arg_t size, * that keeps track of used regions outside of RAM. We'll see. */ struct tcb *r = get_cproc(t); + if (!has_cap(r->caps, CAP_PHYSICAL)) + return_args1(t, ERR_PERM); + flags = sanitize_uvflags(flags); vm_t start = alloc_devmem(r, paddr, size, flags); if (ERR_CODE(start)) |
