git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix issue 31 (#32)
[lunaix-os.git]
/
lunaix-os
/
includes
/
lunaix
/
mm
/
mmap.h
diff --git
a/lunaix-os/includes/lunaix/mm/mmap.h
b/lunaix-os/includes/lunaix/mm/mmap.h
index f85302e339b8d14056b9a1b3661608c6ff933ace..36f8904be92aa7e84aeb6f1dda7d962e5daf58a7 100644
(file)
--- a/
lunaix-os/includes/lunaix/mm/mmap.h
+++ b/
lunaix-os/includes/lunaix/mm/mmap.h
@@
-11,10
+11,11
@@
struct mmap_param
struct proc_mm* pvms; // process vm
off_t offset; // mapped file offset
size_t mlen; // mapped memory length
struct proc_mm* pvms; // process vm
off_t offset; // mapped file offset
size_t mlen; // mapped memory length
- size_t flen; // mapped file length
u32_t proct; // protections
u32_t flags; // other options
u32_t type; // region type
u32_t proct; // protections
u32_t flags; // other options
u32_t type; // region type
+ ptr_t range_start;
+ ptr_t range_end;
};
int
};
int
@@
-22,15
+23,22
@@
mem_adjust_inplace(vm_regions_t* regions,
struct mm_region* region,
ptr_t newend);
struct mm_region* region,
ptr_t newend);
+int
+mmap_user(void** addr_out,
+ struct mm_region** created,
+ ptr_t addr,
+ struct v_file* file,
+ struct mmap_param* param);
+
int
mem_map(void** addr_out,
struct mm_region** created,
int
mem_map(void** addr_out,
struct mm_region** created,
-
void*
addr,
+
ptr_t
addr,
struct v_file* file,
struct mmap_param* param);
int
struct v_file* file,
struct mmap_param* param);
int
-mem_unmap(ptr_t mnt, vm_regions_t* regions,
void*
addr, size_t length);
+mem_unmap(ptr_t mnt, vm_regions_t* regions,
ptr_t
addr, size_t length);
void
mem_unmap_region(ptr_t mnt, struct mm_region* region);
void
mem_unmap_region(ptr_t mnt, struct mm_region* region);