aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/events
diff options
context:
space:
mode:
authorMel Gorman <mgorman@suse.de>2014-10-02 19:47:41 +0100
committerBen Hutchings <ben@decadent.org.uk>2014-11-05 20:27:46 +0000
commitb47191f7d729d2fabd29fbbf3d57158133d4e0ef (patch)
tree765c1f3940f4dbf8e5630ed5310e078bb615dd2b /kernel/events
parent6bf3b2e3ac32809477278d73c9e7a57d7ba82090 (diff)
downloadkernel_samsung_smdk4412-b47191f7d729d2fabd29fbbf3d57158133d4e0ef.zip
kernel_samsung_smdk4412-b47191f7d729d2fabd29fbbf3d57158133d4e0ef.tar.gz
kernel_samsung_smdk4412-b47191f7d729d2fabd29fbbf3d57158133d4e0ef.tar.bz2
mm: migrate: Close race between migration completion and mprotect
commit d3cb8bf6081b8b7a2dabb1264fe968fd870fa595 upstream. A migration entry is marked as write if pte_write was true at the time the entry was created. The VMA protections are not double checked when migration entries are being removed as mprotect marks write-migration-entries as read. It means that potentially we take a spurious fault to mark PTEs write again but it's straight-forward. However, there is a race between write migrations being marked read and migrations finishing. This potentially allows a PTE to be write that should have been read. Close this race by double checking the VMA permissions using maybe_mkwrite when migration completes. [torvalds@linux-foundation.org: use maybe_mkwrite] Signed-off-by: Mel Gorman <mgorman@suse.de> Acked-by: Rik van Riel <riel@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> [bwh: Backported to 3.2: adjust context] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'kernel/events')
0 files changed, 0 insertions, 0 deletions