|
@@ -82,13 +82,10 @@ static int install_file_pte(struct mm_struct *mm, struct vm_area_struct *vma,
|
|
|
|
|
|
ptfile = pgoff_to_pte(pgoff);
|
|
ptfile = pgoff_to_pte(pgoff);
|
|
|
|
|
|
- if (!pte_none(*pte)) {
|
|
|
|
- if (pte_present(*pte) && pte_soft_dirty(*pte))
|
|
|
|
- pte_file_mksoft_dirty(ptfile);
|
|
|
|
|
|
+ if (!pte_none(*pte))
|
|
zap_pte(mm, vma, addr, pte);
|
|
zap_pte(mm, vma, addr, pte);
|
|
- }
|
|
|
|
|
|
|
|
- set_pte_at(mm, addr, pte, ptfile);
|
|
|
|
|
|
+ set_pte_at(mm, addr, pte, pte_file_mksoft_dirty(ptfile));
|
|
/*
|
|
/*
|
|
* We don't need to run update_mmu_cache() here because the "file pte"
|
|
* We don't need to run update_mmu_cache() here because the "file pte"
|
|
* being installed by install_file_pte() is not a real pte - it's a
|
|
* being installed by install_file_pte() is not a real pte - it's a
|