forked from keystone-enclave/keystone-runtime
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmm.h
More file actions
23 lines (18 loc) · 643 Bytes
/
mm.h
File metadata and controls
23 lines (18 loc) · 643 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef _MM_H_
#define _MM_H_
#include <stddef.h>
#include <stdint.h>
#include "vm_defs.h"
uintptr_t translate(uintptr_t va);
pte* pte_of_va(uintptr_t va);
#ifdef USE_FREEMEM
uintptr_t alloc_page(uintptr_t vpn, int flags);
void free_page(uintptr_t vpn);
size_t alloc_pages(uintptr_t vpn, size_t count, int flags);
void free_pages(uintptr_t vpn, size_t count);
size_t test_va_range(uintptr_t vpn, size_t count);
uintptr_t get_program_break();
void set_program_break(uintptr_t new_break);
void map_with_reserved_page_table(uintptr_t base, uintptr_t size, uintptr_t ptr, pte* l2_pt, pte* l3_pt);
#endif /* USE_FREEMEM */
#endif /* _MM_H_ */