Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933086AbdCGSUZ (ORCPT ); Tue, 7 Mar 2017 13:20:25 -0500 Received: from mail-wm0-f65.google.com ([74.125.82.65]:35400 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932986AbdCGSUA (ORCPT ); Tue, 7 Mar 2017 13:20:00 -0500 Date: Tue, 7 Mar 2017 18:24:37 +0300 From: "Kirill A. Shutemov" To: Minchan Kim , g@node.shutemov.name Cc: Anshuman Khandual , Andrew Morton , kernel-team@lge.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Johannes Weiner , Michal Hocko Subject: Re: [RFC 06/11] mm: remove SWAP_MLOCK in ttu Message-ID: <20170307152437.GB2940@node.shutemov.name> References: <1488436765-32350-1-git-send-email-minchan@kernel.org> <1488436765-32350-7-git-send-email-minchan@kernel.org> <54799ea5-005d-939c-de32-bc21af881ab4@linux.vnet.ibm.com> <20170306021508.GD8779@bbox> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170306021508.GD8779@bbox> User-Agent: Mutt/1.5.23.1 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1622 Lines: 36 On Mon, Mar 06, 2017 at 11:15:08AM +0900, Minchan Kim wrote: > Hi Anshuman, > > On Fri, Mar 03, 2017 at 06:06:38PM +0530, Anshuman Khandual wrote: > > On 03/02/2017 12:09 PM, Minchan Kim wrote: > > > ttu don't need to return SWAP_MLOCK. Instead, just return SWAP_FAIL > > > because it means the page is not-swappable so it should move to > > > another LRU list(active or unevictable). putback friends will > > > move it to right list depending on the page's LRU flag. > > > > Right, if it cannot be swapped out there is not much difference with > > SWAP_FAIL once we change the callers who expected to see a SWAP_MLOCK > > return instead. > > > > > > > > A side effect is shrink_page_list accounts unevictable list movement > > > by PGACTIVATE but I don't think it corrupts something severe. > > > > Not sure I got that, could you please elaborate on this. We will still > > activate the page and put it in an appropriate LRU list if it is marked > > mlocked ? > > Right. putback_iactive_pages/putback_lru_page has a logic to filter > out unevictable pages and move them to unevictable LRU list so it > doesn't break LRU change behavior but the concern is until now, > we have accounted PGACTIVATE for only evictable LRU list page but > by this change, it accounts it to unevictable LRU list as well. > However, although I don't think it's big problem in real practice, > we can fix it simply with checking PG_mlocked if someone reports. I think it's better to do this pro-actively. Let's hide both pgactivate++ and SetPageActive() under "if (!PageMlocked())". SetPageActive() is not free. -- Kirill A. Shutemov