shmobj: support large page

Change-Id: I104c1b8551b87f5cbfedb13262e77c00c38e9643
This commit is contained in:
Yoshihisa Morizumi
2021-01-28 10:38:41 +09:00
committed by Masamichi Takagi
parent d2db639853
commit 47aec70f5f
32 changed files with 2219 additions and 75 deletions

View File

@ -20,6 +20,7 @@
#include <ihk/lock.h>
#include <ihk/atomic.h>
#include <arch/mm.h>
#include <page.h>
#include <ihk/debug.h>
struct memobj;
@ -190,7 +191,9 @@ int ihk_mc_pt_set_range(page_table_t pt, struct process_vm *vm, void *start,
int ihk_mc_pt_set_pte(page_table_t pt, pte_t *ptep, size_t pgsize, uintptr_t phys, enum ihk_mc_pt_attribute attr);
int ihk_mc_pt_prepare_map(page_table_t pt, void *virt, unsigned long size,
enum ihk_mc_pt_prepare_flag);
int ihk_mc_pt_split(page_table_t pt, struct process_vm *vm, void *addr);
int ihk_mc_pt_split(page_table_t pt, struct process_vm *vm,
struct vm_range *range, void *addr);
int is_splitable(struct page *page, uint32_t memobj_flags);
typedef int pte_visitor_t(void *arg, page_table_t pt, pte_t *ptep,
void *pgaddr, int pgshift);