Messages in this thread | | | Date | Wed, 12 Mar 2014 08:16:20 -0400 | From | Rik van Riel <> | Subject | Re: [PATCH] mm: numa: Recheck for transhuge pages under lock during protection changes |
| |
On 03/12/2014 06:36 AM, Mel Gorman wrote: > Andrew, this should go with the patches > mmnuma-reorganize-change_pmd_range.patch > mmnuma-reorganize-change_pmd_range-fix.patch > move-mmu-notifier-call-from-change_protection-to-change_pmd_range.patch > in mmotm please. > > Thanks.
That would be nice indeed :)
I am still not entirely sure why the kernel did not hit this race before my reorganize change_pmd_range patch. Maybe gcc used to do one load and now it does two?
> The problem is that a transhuge check is made without holding the PTL. It's > possible at the time of the check that a parallel fault clears the pmd > and inserts a new one which then triggers the VM_BUG_ON check. This patch > removes the VM_BUG_ON but fixes the race by rechecking transhuge under the > PTL when marking page tables for NUMA hinting and bailing if a race occurred. > It is not a problem for calls to mprotect() as they hold mmap_sem for write. > > Reported-by: Sasha Levin <sasha.levin@oracle.com> > Signed-off-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Rik van Riel <riel@redhat.com>
-- All rights reversed
| |