Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2105 → Rev 2106

/trunk/kernel/arch/sparc64/include/mm/tsb.h
54,7 → 54,6
#include <arch/mm/tte.h>
#include <arch/mm/mmu.h>
#include <arch/types.h>
#include <mm/as.h>
 
/** TSB Base register. */
typedef union tsb_base_reg {
108,10 → 107,14
asi_u64_write(ASI_DMMU, VA_DMMU_TSB_BASE, v);
}
 
extern void tsb_invalidate(as_t *as, uintptr_t page, count_t pages);
extern void itsb_pte_copy(pte_t *t);
extern void dtsb_pte_copy(pte_t *t, bool ro);
/* Forward declarations. */
struct as;
struct pte;
 
extern void tsb_invalidate(struct as *as, uintptr_t page, count_t pages);
extern void itsb_pte_copy(struct pte *t);
extern void dtsb_pte_copy(struct pte *t, bool ro);
 
#endif /* !def __ASM__ */
 
#endif
/trunk/kernel/arch/ia32xen/src/mm/page.c
53,9 → 53,9
{
if (config.cpu_active == 1) {
page_mapping_operations = &pt_mapping_operations;
AS_KERNEL->page_table = (pte_t *) KA2PA(start_info.ptl0);
AS_KERNEL->genarch.page_table = (pte_t *) KA2PA(start_info.ptl0);
} else
SET_PTL0_ADDRESS_ARCH(AS_KERNEL->page_table);
SET_PTL0_ADDRESS_ARCH(AS_KERNEL->genarch.page_table);
}
 
void page_fault(int n, istate_t *istate)
/trunk/kernel/arch/amd64/src/pm.c
201,7 → 201,7
/* We are going to use malloc, which may return
* non boot-mapped pointer, initialize the CR3 register
* ahead of page_init */
write_cr3((uintptr_t) AS_KERNEL->page_table);
write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
 
tss_p = (struct tss *) malloc(sizeof(tss_t), FRAME_ATOMIC);
if (!tss_p)
/trunk/kernel/arch/amd64/src/mm/page.c
111,10 → 111,10
}
 
exc_register(14, "page_fault", (iroutine) page_fault);
write_cr3((uintptr_t) AS_KERNEL->page_table);
write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
}
else {
write_cr3((uintptr_t) AS_KERNEL->page_table);
write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
}
}
 
/trunk/kernel/arch/ia32/src/mm/page.c
68,10 → 68,10
}
 
exc_register(14, "page_fault", (iroutine) page_fault);
write_cr3((uintptr_t) AS_KERNEL->page_table);
write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
}
else {
write_cr3((uintptr_t) AS_KERNEL->page_table);
write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
}
 
paging_on();