On Tue, Jul 11, 2017 at 08:18:23PM +0100, Mel Gorman wrote: > I don't think we should be particularly clever about this and instead just > flush the full mm if there is a risk of a parallel batching of flushing is > in progress resulting in a stale TLB entry being used. I think tracking mms > that are currently batching would end up being costly in terms of memory, > fairly complex, or both. Something like this? > mremap and madvise(DONTNEED) would also need to flush. Memory policies are fine as a move_pages call that hits the race will simply fail to migrate a page that is being freed and once migration starts, it'll be flushed so a stale access has no further risk. copy_page_range should also be ok as the old mm is flushed and the new mm cannot have entries yet. -- Mel Gorman SUSE Labs -- 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>