Skip to content

Commit

Permalink
ARM: make_coherent: convert adjust_pte() to use p*d_none_or_clear_bad()
Browse files Browse the repository at this point in the history
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Russell King committed Jan 20, 2010
1 parent c26c20b commit f8a85f1
Showing 1 changed file with 4 additions and 20 deletions.
24 changes: 4 additions & 20 deletions arch/arm/mm/fault-armv.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,16 +73,12 @@ static int adjust_pte(struct vm_area_struct *vma, unsigned long address)
int ret;

pgd = pgd_offset(vma->vm_mm, address);
if (pgd_none(*pgd))
goto no_pgd;
if (pgd_bad(*pgd))
goto bad_pgd;
if (pgd_none_or_clear_bad(pgd))
return 0;

pmd = pmd_offset(pgd, address);
if (pmd_none(*pmd))
goto no_pmd;
if (pmd_bad(*pmd))
goto bad_pmd;
if (pmd_none_or_clear_bad(pmd))
return 0;

pte = pte_offset_map(pmd, address);

Expand All @@ -91,18 +87,6 @@ static int adjust_pte(struct vm_area_struct *vma, unsigned long address)
pte_unmap(pte);

return ret;

bad_pgd:
pgd_ERROR(*pgd);
pgd_clear(pgd);
no_pgd:
return 0;

bad_pmd:
pmd_ERROR(*pmd);
pmd_clear(pmd);
no_pmd:
return 0;
}

static void
Expand Down

0 comments on commit f8a85f1

Please sign in to comment.