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
reduce the size of ppage by 8 bytes using signly linked list
[lunaix-os.git]
/
lunaix-os
/
includes
/
lunaix
/
mm
/
region.h
diff --git
a/lunaix-os/includes/lunaix/mm/region.h
b/lunaix-os/includes/lunaix/mm/region.h
index cc7d3df2e53d00736bf983b5c26b892be478dbab..34e517ea41fbeb747aeb0eabd5c1b13a00945289 100644
(file)
--- a/
lunaix-os/includes/lunaix/mm/region.h
+++ b/
lunaix-os/includes/lunaix/mm/region.h
@@
-40,6
+40,16
@@
writable_region(struct mm_region* mm) {
return !!(mm->attr & (REGION_RSHARED | REGION_WRITE));
}
return !!(mm->attr & (REGION_RSHARED | REGION_WRITE));
}
+static inline bool
+readable_region(struct mm_region* mm) {
+ return !!(mm->attr & (REGION_RSHARED | REGION_READ));
+}
+
+static inline bool
+executable_region(struct mm_region* mm) {
+ return !!(mm->attr & REGION_EXEC);
+}
+
static inline bool
shared_writable_region(struct mm_region* mm) {
return !!(mm->attr & REGION_WSHARED);
static inline bool
shared_writable_region(struct mm_region* mm) {
return !!(mm->attr & REGION_WSHARED);
@@
-70,10
+80,10
@@
region_copy_mm(struct proc_mm* src, struct proc_mm* dest);
struct mm_region*
region_dup(struct mm_region* origin);
struct mm_region*
region_dup(struct mm_region* origin);
-static inline pte_
attr_
t
-region_
pteprot(struct mm_region* vmr
)
+static inline pte_t
+region_
tweakpte(struct mm_region* vmr, pte_t pte
)
{
{
- return translate_vmr_prot(vmr->attr);
+ return translate_vmr_prot(vmr->attr
, pte
);
}
#endif /* __LUNAIX_REGION_H */
}
#endif /* __LUNAIX_REGION_H */