From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751920Ab1GaPGW (ORCPT ); Sun, 31 Jul 2011 11:06:22 -0400 Received: from mail-pz0-f42.google.com ([209.85.210.42]:40089 "EHLO mail-pz0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750982Ab1GaPGR (ORCPT ); Sun, 31 Jul 2011 11:06:17 -0400 Date: Mon, 1 Aug 2011 00:06:06 +0900 From: Minchan Kim To: Mel Gorman Cc: Linux-MM , LKML , XFS , Dave Chinner , Christoph Hellwig , Johannes Weiner , Wu Fengguang , Jan Kara , Rik van Riel Subject: Re: [PATCH 1/8] mm: vmscan: Do not writeback filesystem pages in direct reclaim Message-ID: <20110731150606.GB1735@barrios-desktop> References: <1311265730-5324-1-git-send-email-mgorman@suse.de> <1311265730-5324-2-git-send-email-mgorman@suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1311265730-5324-2-git-send-email-mgorman@suse.de> 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 On Thu, Jul 21, 2011 at 05:28:43PM +0100, Mel Gorman wrote: > From: Mel Gorman > > When kswapd is failing to keep zones above the min watermark, a process > will enter direct reclaim in the same manner kswapd does. If a dirty > page is encountered during the scan, this page is written to backing > storage using mapping->writepage. > > This causes two problems. First, it can result in very deep call > stacks, particularly if the target storage or filesystem are complex. > Some filesystems ignore write requests from direct reclaim as a result. > The second is that a single-page flush is inefficient in terms of IO. > While there is an expectation that the elevator will merge requests, > this does not always happen. Quoting Christoph Hellwig; > > The elevator has a relatively small window it can operate on, > and can never fix up a bad large scale writeback pattern. > > This patch prevents direct reclaim writing back filesystem pages by > checking if current is kswapd. Anonymous pages are still written to > swap as there is not the equivalent of a flusher thread for anonymous > pages. If the dirty pages cannot be written back, they are placed > back on the LRU lists. There is now a direct dependency on dirty page > balancing to prevent too many pages in the system being dirtied which > would prevent reclaim making forward progress. > > Signed-off-by: Mel Gorman Reviewed-by: Minchan Kim Nitpick. We can change description of should_reclaim_stall. "Returns true if the caller should wait to clean dirty/writeback pages" -> "Returns true if direct reclaimer should wait to clean writeback pages" -- Kind regards, Minchan Kim