Ejemplo n.º 1
0
static int move_one_page(struct mm_struct *mm, unsigned long old_addr, unsigned long new_addr)
{
	int error = 0;
	pte_t * src;

	src = get_one_pte(mm, old_addr);
	if (src)
		error = copy_one_pte(src, alloc_one_pte(mm, new_addr));
	return error;
}
Ejemplo n.º 2
0
static int move_one_page(struct mm_struct *mm, unsigned long old_addr, unsigned long new_addr)
{
	int error = 0;
	pte_t * src, * dst;

	spin_lock(&mm->page_table_lock);
	src = get_one_pte(mm, old_addr);
	if (src) {
		dst = alloc_one_pte(mm, new_addr);
		src = get_one_pte(mm, old_addr);
		if (src) 
			error = copy_one_pte(mm, src, dst);
	}
	spin_unlock(&mm->page_table_lock);
	return error;
}