From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail144.messagelabs.com (mail144.messagelabs.com [216.82.254.51]) by kanga.kvack.org (Postfix) with SMTP id A8A046B0071 for ; Thu, 25 Mar 2010 04:56:29 -0400 (EDT) Received: from m2.gw.fujitsu.co.jp ([10.0.50.72]) by fgwmail6.fujitsu.co.jp (Fujitsu Gateway) with ESMTP id o2P8uRhV020021 for (envelope-from kosaki.motohiro@jp.fujitsu.com); Thu, 25 Mar 2010 17:56:27 +0900 Received: from smail (m2 [127.0.0.1]) by outgoing.m2.gw.fujitsu.co.jp (Postfix) with ESMTP id C3D7045DE4E for ; Thu, 25 Mar 2010 17:56:26 +0900 (JST) Received: from s2.gw.fujitsu.co.jp (s2.gw.fujitsu.co.jp [10.0.50.92]) by m2.gw.fujitsu.co.jp (Postfix) with ESMTP id 9A19C45DE51 for ; Thu, 25 Mar 2010 17:56:26 +0900 (JST) Received: from s2.gw.fujitsu.co.jp (localhost.localdomain [127.0.0.1]) by s2.gw.fujitsu.co.jp (Postfix) with ESMTP id 7EF6C1DB803A for ; Thu, 25 Mar 2010 17:56:26 +0900 (JST) Received: from ml14.s.css.fujitsu.com (ml14.s.css.fujitsu.com [10.249.87.104]) by s2.gw.fujitsu.co.jp (Postfix) with ESMTP id 276171DB803E for ; Thu, 25 Mar 2010 17:56:26 +0900 (JST) From: KOSAKI Motohiro Subject: Re: [PATCH 02/11] mm,migration: Do not try to migrate unmapped anonymous pages In-Reply-To: <20100325083235.GF2024@csn.ul.ie> References: <20100325095349.944E.A69D9226@jp.fujitsu.com> <20100325083235.GF2024@csn.ul.ie> Message-Id: <20100325175034.6C86.A69D9226@jp.fujitsu.com> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Date: Thu, 25 Mar 2010 17:56:25 +0900 (JST) Sender: owner-linux-mm@kvack.org To: Mel Gorman Cc: kosaki.motohiro@jp.fujitsu.com, Minchan Kim , KAMEZAWA Hiroyuki , Andrew Morton , Andrea Arcangeli , Christoph Lameter , Adam Litke , Avi Kivity , David Rientjes , Rik van Riel , linux-kernel@vger.kernel.org, linux-mm@kvack.org List-ID: > On Thu, Mar 25, 2010 at 11:49:23AM +0900, KOSAKI Motohiro wrote: > > > On Fri, Mar 19, 2010 at 03:21:41PM +0900, KOSAKI Motohiro wrote: > > > > > > then, this logic depend on SLAB_DESTROY_BY_RCU, not refcount. > > > > > > So, I think we don't need your [1/11] patch. > > > > > > > > > > > > Am I missing something? > > > > > > > > > > > > > > > > The refcount is still needed. The anon_vma might be valid, but the > > > > > refcount is what ensures that the anon_vma is not freed and reused. > > > > > > > > please please why do we need both mechanism. now cristoph is very busy and I am > > > > de fact reviewer of page migration and mempolicy code. I really hope to understand > > > > your patch. > > > > > > As in, why not drop the RCU protection of anon_vma altogeter? Mainly, because I > > > think it would be reaching too far for this patchset and it should be done as > > > a follow-up. Putting the ref-count everywhere will change the cache-behaviour > > > of anon_vma more than I'd like to slip into a patchset like this. Secondly, > > > Christoph mentions that SLAB_DESTROY_BY_RCU is used to keep anon_vma cache-hot. > > > For these reasons, removing RCU from these paths and adding the refcount > > > in others is a patch that should stand on its own. > > > > Hmmm... > > I haven't understand your mention because I guess I was wrong. > > > > probably my last question was unclear. I mean, > > > > 1) If we still need SLAB_DESTROY_BY_RCU, why do we need to add refcount? > > Which difference is exist between normal page migration and compaction? > > The processes typically calling migration today own the page they are moving > and is not going to exit unexpectedly during migration. > > > 2) If we added refcount, which race will solve? > > > > The process exiting and the last anon_vma being dropped while compaction > is running. This can be reliably triggered with compaction. > > > IOW, Is this patch fix old issue or compaction specific issue? > > Strictly speaking, it's an old issue but in practice it's impossible to > trigger because the process migrating always owns the page. Compaction > moves pages belonging to arbitrary processes. Do you mean current memroy hotplug code is broken??? I think compaction need refcount, hotplug also need it. both they migrate another task's page. but , I haven't seen hotplug failure. Am I missing something? or the compaction have its specific race situation? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org