summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2024-04-25 00:57:02 -0400
committerIan Moffett <ian@osmora.org>2024-04-25 00:57:02 -0400
commitdbea81051df560226be46a149457e693337357d9 (patch)
treed07b5343746fb1242a25092fac6f241e154ea8d1 /sys
parent3c50e6cf145ef8e9d661a80d40e85bceefca7dfa (diff)
kernel: vm_map: Refactor mmap()
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys')
-rw-r--r--sys/vm/vm_map.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c
index 2d7638e..05f4c20 100644
--- a/sys/vm/vm_map.c
+++ b/sys/vm/vm_map.c
@@ -321,12 +321,12 @@ mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off)
size_t misalign = ((vaddr_t)addr) & (GRANULE - 1);
paddr_t physmem = 0;
- mapping->prot = prot | PROT_USER;
-
/* Ensure of valid prot flags */
if ((prot & ~PROT_MASK) != 0)
return MAP_FAILED;
+ mapping->prot = prot | PROT_USER;
+
/*
* Now we check what type of map request
* this is.
@@ -364,12 +364,14 @@ mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off)
}
/* Did this work? */
- if (physmem == 0 && addr == NULL)
+ if (physmem == 0 && addr == NULL) {
return MAP_FAILED;
+ }
} else if (__TEST(flags, MAP_SHARED)) {
physmem = vm_fd_map(addr, prot, len, off, fildes, mapping);
- if (physmem == 0)
+ if (physmem == 0) {
return MAP_FAILED;
+ }
}