FreeBSD/sys/arm/arm/pmap-v6.c
/*
 *  Initialize the pmap for the swapper process.
 */
Initialize the pmap for the swapper process.
Initialize the pmap for the swapper process .
void
pmap_pinit0(pmap_t pmap)
{
	PDEBUG(1, printf("%s: pmap = %p\n", __func__, pmap));
	PMAP_LOCK_INIT(pmap);
	pmap->pm_pt1 = kern_pt1;
	pmap->pm_pt2tab = kern_pt2tab;
	CPU_ZERO(&pmap->pm_active);
	PCPU_SET(curpmap, pmap);
	TAILQ_INIT(&pmap->pm_pvchunk);
	bzero(&pmap->pm_stats, sizeof pmap->pm_stats);
	CPU_SET(0, &pmap->pm_active);
}
void pmap_pinit0 ( pmap_t pmap ) { PDEBUG ( 1 , printf ( " \n " , __func__ , pmap ) ) ; PMAP_LOCK_INIT ( pmap ) ; pmap -> pm_pt1 = kern_pt1 ; pmap -> pm_pt2tab = kern_pt2tab ; CPU_ZERO ( & pmap -> pm_active ) ; PCPU_SET ( curpmap , pmap ) ; TAILQ_INIT ( & pmap -> pm_pvchunk ) ; bzero ( & pmap -> pm_stats , sizeof pmap -> pm_stats ) ; CPU_SET ( 0 , & pmap -> pm_active ) ; }
Initialize the pmap for the swapper process.
Initialize the pmap for the swapper process .
/*
	 * Kernel page table directory and pmap stuff around is already
	 * initialized, we are using it right now and here. So, finish
	 * only PMAP structures initialization for process0 ...
	 *
	 * Since the L1 page table and PT2TAB is shared with the kernel pmap,
	 * which is already included in the list "allpmaps", this pmap does
	 * not need to be inserted into that list.
	 */