add shared mapped file (in progress)
implemented: - Pages can be shared between maps. - A change made to a map is written to the file, at munmap(). not yet implemented: - VM operation during page IO execution. Because page IO is executed with VM's lock. - Page IO, which does not change a file size with any case. When munmap() races with truncate(), the file size may be changed illegally.
This commit is contained in:
@ -4,6 +4,8 @@
|
||||
#include <ihk/types.h>
|
||||
#include <memory.h>
|
||||
|
||||
struct memobj;
|
||||
|
||||
enum ihk_mc_gma_type {
|
||||
IHK_MC_GMA_MAP_START,
|
||||
IHK_MC_GMA_MAP_END,
|
||||
@ -96,7 +98,7 @@ int ihk_mc_pt_change_page(page_table_t pt, void *virt,
|
||||
int ihk_mc_pt_clear_page(page_table_t pt, void *virt);
|
||||
int ihk_mc_pt_clear_large_page(page_table_t pt, void *virt);
|
||||
int ihk_mc_pt_clear_range(page_table_t pt, void *start, void *end);
|
||||
int ihk_mc_pt_free_range(page_table_t pt, void *start, void *end);
|
||||
int ihk_mc_pt_free_range(page_table_t pt, void *start, void *end, struct memobj *memobj);
|
||||
int ihk_mc_pt_change_attr_range(page_table_t pt, void *start, void *end,
|
||||
enum ihk_mc_pt_attribute clrattr,
|
||||
enum ihk_mc_pt_attribute setattr);
|
||||
|
||||
Reference in New Issue
Block a user