xpmem: fix mapping of attachment and segment
* Mapping attached part of segment is done at attach time instead of
make time to work with runtimes (e.g. OpenMPI) xpmem_make-ing the
entire user-space
* Mapping attached part of segment at attach time can be turned off by
specifying xpmem_remote_on_demand in kernel argument
* Mapping attachment chooses appropriate page-sizes, i.e., largest
allowed by memory range and segment page boundary
Fixes: a8696d8 "xpmem: Support large page attachment"
Change-Id: I44663865204036520e5f62fe22b9134ee4629f9b
This commit is contained in:
@ -62,6 +62,7 @@ extern int interrupt_from_user(void *);
|
||||
struct tlb_flush_entry tlb_flush_vector[IHK_TLB_FLUSH_IRQ_VECTOR_SIZE];
|
||||
|
||||
int anon_on_demand = 0;
|
||||
int xpmem_remote_on_demand;
|
||||
|
||||
static struct ihk_mc_pa_ops *pa_ops;
|
||||
|
||||
@ -1954,6 +1955,11 @@ void mem_init(void)
|
||||
kprintf("Demand paging on ANONYMOUS mappings enabled.\n");
|
||||
anon_on_demand = 1;
|
||||
}
|
||||
|
||||
if (find_command_line("xpmem_remote_on_demand")) {
|
||||
kprintf("Demand paging on XPMEM remote mappings enabled.\n");
|
||||
xpmem_remote_on_demand = 1;
|
||||
}
|
||||
|
||||
/* Init distance vectors */
|
||||
numa_distances_init();
|
||||
|
||||
Reference in New Issue
Block a user