From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754878Ab1HCLK7 (ORCPT ); Wed, 3 Aug 2011 07:10:59 -0400 Received: from mx1.redhat.com ([209.132.183.28]:61965 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753107Ab1HCLKz (ORCPT ); Wed, 3 Aug 2011 07:10:55 -0400 Date: Wed, 3 Aug 2011 13:10:31 +0200 From: Johannes Weiner To: Mel Gorman Cc: Linux-MM , LKML , XFS , Dave Chinner , Christoph Hellwig , Wu Fengguang , Jan Kara , Rik van Riel , Minchan Kim Subject: Re: [PATCH 4/8] btrfs: Warn if direct reclaim tries to writeback pages Message-ID: <20110803111031.GC27199@redhat.com> References: <1311265730-5324-1-git-send-email-mgorman@suse.de> <1311265730-5324-5-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-5-git-send-email-mgorman@suse.de> 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:46PM +0100, Mel Gorman wrote: > Direct reclaim should never writeback pages. Warn if an attempt is > made. By rights, btrfs should be allowing writepage from kswapd if > it is failing to reclaim pages by any other means but it's outside > the scope of this patch. > > Signed-off-by: Mel Gorman > --- > fs/btrfs/disk-io.c | 2 ++ > fs/btrfs/inode.c | 2 ++ > 2 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c > index 1ac8db5d..cc9c9cf 100644 > --- a/fs/btrfs/disk-io.c > +++ b/fs/btrfs/disk-io.c > @@ -829,6 +829,8 @@ static int btree_writepage(struct page *page, struct writeback_control *wbc) > > tree = &BTRFS_I(page->mapping->host)->io_tree; > if (!(current->flags & PF_MEMALLOC)) { > + WARN_ON_ONCE((current->flags & (PF_MEMALLOC|PF_KSWAPD)) == > + PF_MEMALLOC); Since it is branch for PF_MEMALLOC being set, why not just WARN_ON_ONCE(!(current->flags & PF_KSWAPD)) instead? Minor nitpick, though, and I can understand if you just want to have the conditionals be the same in every fs. Acked-by: Johannes Weiner