sweep through entire page table to free up intermediate tables
[lunaix-os.git] / lunaix-os / includes / lunaix / mm / procvm.h
index 820bf1e61f044a3aeafa4c6f8536f4646548be24..f75cb965a07600d1a8de9ddb56d01f588eeba298 100644 (file)
@@ -49,6 +49,9 @@ struct proc_mm
 struct proc_mm*
 procvm_create(struct proc_info* proc);
 
+void
+procvm_prune_vmr(ptr_t vm_mnt, struct mm_region* region);
+
 /**
  * @brief Initialize and mount the vm of `proc` to duplication of current process
  * 
@@ -108,4 +111,14 @@ procvm_copy_remote(struct remote_vmctx* rvmctx,
 void
 procvm_exit_remote(struct remote_vmctx* rvmctx);
 
+/*
+    architecture-specific
+*/
+
+void
+procvm_link_kernel(ptr_t dest_mnt);
+
+void
+procvm_unlink_kernel(ptr_t dest_mnt);
+
 #endif /* __LUNAIX_PROCVM_H */