diff --git a/arch/x86/kernel/include/arch-memory.h b/arch/x86/kernel/include/arch-memory.h index 31bc9c96..051635a9 100644 --- a/arch/x86/kernel/include/arch-memory.h +++ b/arch/x86/kernel/include/arch-memory.h @@ -216,12 +216,13 @@ static inline void pte_make_null(pte_t *ptep, size_t pgsize) } static inline void pte_make_fileoff(off_t off, - enum ihk_mc_pt_attribute ptattr, size_t pgsize, pte_t *ptep) + enum ihk_mc_pt_attribute ptattr, pte_t *ptep) { uint64_t attr; attr = ptattr & ~PAGE_MASK; +#if 0 switch (pgsize) { case PTL1_SIZE: attr |= PFL1_FILEOFF; break; case PTL2_SIZE: attr |= PFL2_FILEOFF | PFL2_SIZE; break; @@ -234,6 +235,9 @@ static inline void pte_make_fileoff(off_t off, #endif break; } +#else + attr |= PFL1_FILEOFF; +#endif *ptep = (off & PAGE_MASK) | attr; } diff --git a/kernel/process.c b/kernel/process.c index b18b2f38..3a573c7c 100644 --- a/kernel/process.c +++ b/kernel/process.c @@ -1252,7 +1252,7 @@ static int remap_one_page(void *arg0, page_table_t pt, pte_t *ptep, } off = args->off + ((uintptr_t)pgaddr - args->start); - pte_make_fileoff(off, 0, pgsize, &apte); + pte_make_fileoff(off, 0, &apte); pte_xchg(ptep, &apte); flush_tlb_single((uintptr_t)pgaddr); /* XXX: TLB flush */ @@ -1411,7 +1411,7 @@ static int invalidate_one_page(void *arg0, page_table_t pt, pte_t *ptep, pte_make_null(&apte, pgsize); } else { - pte_make_fileoff(page->offset, 0, pgsize, &apte); + pte_make_fileoff(page->offset, 0, &apte); } pte_xchg(ptep, &apte); flush_tlb_single((uintptr_t)pgaddr); /* XXX: TLB flush */