From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758996Ab0D3SYF (ORCPT ); Fri, 30 Apr 2010 14:24:05 -0400 Received: from mx1.redhat.com ([209.132.183.28]:45305 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933187Ab0D3RWa (ORCPT ); Fri, 30 Apr 2010 13:22:30 -0400 Date: Thu, 29 Apr 2010 18:21:20 +0200 From: Andrea Arcangeli To: Mel Gorman Cc: Andrew Morton , Linux-MM , LKML , Minchan Kim , KAMEZAWA Hiroyuki , Christoph Lameter , Rik van Riel Subject: Re: [PATCH 2/2] mm,migration: Avoid race between shift_arg_pages() and rmap_walk() during migration by not migrating temporary stacks Message-ID: <20100429162120.GC22108@random.random> References: <1272529930-29505-1-git-send-email-mel@csn.ul.ie> <1272529930-29505-3-git-send-email-mel@csn.ul.ie> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1272529930-29505-3-git-send-email-mel@csn.ul.ie> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Mel, did you see my proposed fix? I'm running with it applied, I'd be interested if you can test it. Surely it will also work for new anon-vma code in upstream, because at that point there's just 1 anon-vma and nothing else attached to the vma. http://git.kernel.org/?p=linux/kernel/git/andrea/aa.git;a=commit;h=6efa1dfa5152ef8d7f26beb188d6877525a9dd03 I think it's wrong to try to handle the race in rmap walk by making magic checks on vm_flags VM_GROWSDOWN|GROWSUP and vma->vm_mm->map_count == 1, when we can fix it fully and simply in exec.c by indexing two vmas in the same anon-vma with a different vm_start so the pages will be found at all times by the rmap_walk.