preempt_disable(); spin_lock(&tsk->mm->page_table_lock); pgd = pgd_offset(tsk->mm, 0xA0000); 
pgd = pgd_offset(mm, 0xA0000); 
static void mark_screen_rdonly(struct task_struct * tsk){	pgd_t *pgd;	pud_t *pud;	pmd_t *pmd;	pte_t *pte, *mapped;	int i;	preempt_disable();	spin_lock(&tsk->mm->page_table_lock);	pgd = pgd_offset(tsk->mm, 0xA0000);	if (pgd_none_or_clear_bad(pgd))		goto out;	pud = pud_offset(pgd, 0xA0000);	if (pud_none_or_clear_bad(pud))		goto out;	pmd = pmd_offset(pud, 0xA0000);	if (pmd_none_or_clear_bad(pmd))		goto out;	pte = mapped = pte_offset_map(pmd, 0xA0000);	for (i = 0; i < 32; i++) {		if (pte_present(*pte))			set_pte(pte, pte_wrprotect(*pte));		pte++;	}	pte_unmap(mapped);out:	spin_unlock(&tsk->mm->page_table_lock);	preempt_enable();	flush_tlb();}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/60ec5585496871345c1a8113d7b60ed9d9474866/vm86.c/buggy/arch/i386/kernel/vm86.c