Example #1
0
pte_t *pte_alloc_one_kernel(struct mm_struct *mm, unsigned long address)
{
	pte_t *pte;
	extern int mem_init_done;
	extern void *early_get_page(void);

	if (mem_init_done)
		pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT);
	else
		pte = (pte_t *)early_get_page();
	if (pte)
		clear_page(pte);
	return pte;
}
Example #2
0
pte_t *pte_alloc_one_kernel(struct mm_struct *mm, unsigned long address)
{
	pte_t *pte;
	extern int mem_init_done;
	extern void *early_get_page(void);

	if (mem_init_done) {
		pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT);
		if (pte) {
			struct page *ptepage = virt_to_page(pte);
			ptepage->mapping = (void *) mm;
			ptepage->index = address & PMD_MASK;
		}
	} else
		pte = (pte_t *)early_get_page();
	if (pte)
		clear_page(pte);
	return pte;
}