Messages in this thread | | | Date | Mon, 07 Oct 2013 09:55:47 -0400 | From | Rik van Riel <> | Subject | Re: [PATCH 05/63] mm: Wait for THP migrations to complete during NUMA hinting faults |
| |
On 10/07/2013 06:28 AM, Mel Gorman wrote: > The locking for migrating THP is unusual. While normal page migration > prevents parallel accesses using a migration PTE, THP migration relies on > a combination of the page_table_lock, the page lock and the existance of > the NUMA hinting PTE to guarantee safety but there is a bug in the scheme. > > If a THP page is currently being migrated and another thread traps a > fault on the same page it checks if the page is misplaced. If it is not, > then pmd_numa is cleared. The problem is that it checks if the page is > misplaced without holding the page lock meaning that the racing thread > can be migrating the THP when the second thread clears the NUMA bit > and faults a stale page. > > This patch checks if the page is potentially being migrated and stalls > using the lock_page if it is potentially being migrated before checking > if the page is misplaced or not. > > Cc: stable <stable@vger.kernel.org> > Signed-off-by: Peter Zijlstra <peterz@infradead.org> > Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Rik van Riel <riel@redhat.com>
-- All rights reversed
| |