Messages in this thread | | | Subject | Re: [rfc][patch] mm: dirty page accounting race fix | From | Peter Zijlstra <> | Date | Thu, 14 Aug 2008 14:18:38 +0200 |
| |
On Thu, 2008-08-14 at 12:55 +0100, Hugh Dickins wrote:
> But I got a bit distracted: mprotect's change_pte_range is > traditionally where the pte_modify operation has been split up into > stages on some arches, that really can be restricting permissions > and needs to tread carefully. Now I go to look there, I see its > /* > * Avoid taking write faults for pages we know to be > * dirty. > */ > if (dirty_accountable && pte_dirty(ptent)) > ptent = pte_mkwrite(ptent); > > and get rather worried: isn't that likely to be giving write permission > to a pte in a vma we are precisely taking write permission away from?
Exactly, we do that because the page is already dirty, therefore we do not need to trap on write to mark it dirty - at least, that was the idea behind this optimization.
| |