On 10/07/2013 06:29 AM, Mel Gorman wrote: > With the THP migration races closed it is still possible to occasionally > see corruption. The problem is related to handling PMD pages in batch. > When a page fault is handled it can be assumed that the page being > faulted will also be flushed from the TLB. The same flushing does not > happen when handling PMD pages in batch. Fixing is straight forward but > there are a number of reasons not to > > 1. Multiple TLB flushes may have to be sent depending on what pages get > migrated > 2. The handling of PMDs in batch means that faults get accounted to > the task that is handling the fault. While care is taken to only > mark PMDs where the last CPU and PID match it can still have problems > due to PID truncation when matching PIDs. > 3. Batching on the PMD level may reduce faults but setting pmd_numa > requires taking a heavy lock that can contend with THP migration > and handling the fault requires the release/acquisition of the PTL > for every page migrated. It's still pretty heavy. > > PMD batch handling is not something that people ever have been happy > with. This patch removes it and later patches will deal with the > additional fault overhead using more installigent migrate rate adaption. > > Signed-off-by: Mel Gorman <mgorman@xxxxxxx> Reviewed-by: Rik van Riel <riel@xxxxxxxxxx> -- All rights reversed -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>