Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753978Ab2HJMqz (ORCPT ); Fri, 10 Aug 2012 08:46:55 -0400 Received: from gir.skynet.ie ([193.1.99.77]:44109 "EHLO gir.skynet.ie" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750744Ab2HJMqx (ORCPT ); Fri, 10 Aug 2012 08:46:53 -0400 Date: Fri, 10 Aug 2012 13:46:49 +0100 From: Mel Gorman To: Rafael Aquini Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, Rusty Russell , "Michael S. Tsirkin" , Rik van Riel , Andi Kleen , Andrew Morton , Konrad Rzeszutek Wilk , Minchan Kim Subject: Re: [PATCH v6 1/3] mm: introduce compaction and migration for virtio ballooned pages Message-ID: <20120810124649.GL10288@csn.ul.ie> References: <20120809090019.GB10288@csn.ul.ie> <20120809144835.GA2719@t510.redhat.com> <20120809151218.GB2719@t510.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <20120809151218.GB2719@t510.redhat.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1443 Lines: 53 On Thu, Aug 09, 2012 at 12:12:19PM -0300, Rafael Aquini wrote: > On Thu, Aug 09, 2012 at 11:48:36AM -0300, Rafael Aquini wrote: > > Sure! > > what do you think of: > > > > +/* putback_lru_page() counterpart for a ballooned page */ > > +void putback_balloon_page(struct page *page) > > +{ > > + lock_page(page); > > + if (!WARN_ON(!movable_balloon_page(page))) { > > + __putback_balloon_page(page); > > + put_page(page); > > + } > > + unlock_page(page); > > +} > > > Or perhaps > > +/* putback_lru_page() counterpart for a ballooned page */ > +void putback_balloon_page(struct page *page) > +{ > + if (!WARN_ON(!movable_balloon_page(page))) { > + lock_page(page); > + __putback_balloon_page(page); > + put_page(page); > + unlock_page(page); > + } > +} That should be fine. I find the WARN_ON construct odd to read but only because it's unusual. It is more typical to see something like if (WARN_ON(!movable_balooon_page(page))) return; lock_page(page); __putback_balloon_page(page); put_page(page); unlock_page(page); but either works. Do not forget to update the caller of course. Thanks. -- Mel Gorman SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/