Ver código fonte

change(mmap): remove _mmap

greatbridf 2 anos atrás
pai
commit
b60840f419
1 arquivos alterados com 5 adições e 15 exclusões
  1. 5 15
      src/kernel/mem.cpp

+ 5 - 15
src/kernel/mem.cpp

@@ -284,8 +284,7 @@ int mm::append_page(page* pg, bool present, bool write, bool priv, bool cow)
     return GB_OK;
 }
 
-static inline int _mmap(
-    mm_list* mms,
+int mmap(
     void* hint,
     size_t len,
     fs::inode* file,
@@ -293,6 +292,8 @@ static inline int _mmap(
     int write,
     int priv)
 {
+    auto& mms = current_process->mms;
+
     if (unlikely(!file->flags.in.file && !file->flags.in.special_node)) {
         errno = EINVAL;
         return GB_FAILED;
@@ -305,12 +306,12 @@ static inline int _mmap(
 
     size_t n_pgs = align_up<12>(len) >> 12;
 
-    if (!mms->is_avail(hint, len)) {
+    if (!mms.is_avail(hint, len)) {
         errno = EEXIST;
         return GB_FAILED;
     }
 
-    auto mm = mms->addarea(hint, write, priv);
+    auto mm = mms.addarea(hint, write, priv);
     mm->mapped_file = file;
     mm->file_offset = offset;
 
@@ -320,17 +321,6 @@ static inline int _mmap(
     return GB_OK;
 }
 
-int mmap(
-    void* hint,
-    size_t len,
-    fs::inode* file,
-    size_t offset,
-    int write,
-    int priv)
-{
-    return _mmap(&current_process->mms, hint, len, file, offset, write, priv);
-}
-
 SECTION(".text.kinit")
 void init_mem(void)
 {