]> git.karo-electronics.de Git - karo-tx-linux.git/commit
hugetlb: detect race upon page allocation failure during COW
authorHillf Danton <dhillf@gmail.com>
Thu, 8 Dec 2011 04:41:43 +0000 (15:41 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Tue, 13 Dec 2011 06:43:10 +0000 (17:43 +1100)
commitbce7a1aa1e66fc00d652ff5e818a1dddbe973de8
tree59b015e55c8c34458c82cfb625f0c50bd1f8fd07
parent47f2b389143f352eca43609e455bdecb4297faa2
hugetlb: detect race upon page allocation failure during COW

Currently we are not rechecking pte_same in hugetlb_cow after we take ptl
lock again in the page allocation failure code path and simply retry
again.  This is not an issue at the moment because hugetlb fault path is
protected by hugetlb_instantiation_mutex so we cannot race.

The original page is locked and so we cannot race even with the page
migration.

Let's add the pte_same check anyway as we want to be consistent with the
other check later in this function and be safe if we ever remove the
mutex.

[mhocko@suse.cz: reworded the changelog]
Signed-off-by: Hillf Danton <dhillf@gmail.com>
Signed-off-by: Michal Hocko <mhocko@suse.cz>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Johannes Weiner <jweiner@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/hugetlb.c