49 lines
1.8 KiB
Diff
49 lines
1.8 KiB
Diff
From linux-fsdevel-owner@vger.kernel.org Fri May 13 10:03:38 2011
|
|
From: Mel Gorman <mgorman@suse.de>
|
|
To: Andrew Morton <akpm@linux-foundation.org>
|
|
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>,
|
|
Colin King <colin.king@canonical.com>,
|
|
Raghavendra D Prabhu <raghu.prabhu13@gmail.com>,
|
|
Jan Kara <jack@suse.cz>, Chris Mason <chris.mason@oracle.com>,
|
|
Christoph Lameter <cl@linux.com>,
|
|
Pekka Enberg <penberg@kernel.org>,
|
|
Rik van Riel <riel@redhat.com>,
|
|
Johannes Weiner <hannes@cmpxchg.org>,
|
|
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
|
|
linux-mm <linux-mm@kvack.org>,
|
|
linux-kernel <linux-kernel@vger.kernel.org>,
|
|
linux-ext4 <linux-ext4@vger.kernel.org>,
|
|
Mel Gorman <mgorman@suse.de>
|
|
Subject: [PATCH 1/4] mm: vmscan: Correct use of pgdat_balanced in sleeping_prematurely
|
|
Date: Fri, 13 May 2011 15:03:21 +0100
|
|
Message-Id: <1305295404-12129-2-git-send-email-mgorman@suse.de>
|
|
X-Mailing-List: linux-fsdevel@vger.kernel.org
|
|
|
|
Johannes Weiner poined out that the logic in commit [1741c877: mm:
|
|
kswapd: keep kswapd awake for high-order allocations until a percentage
|
|
of the node is balanced] is backwards. Instead of allowing kswapd to go
|
|
to sleep when balancing for high order allocations, it keeps it kswapd
|
|
running uselessly.
|
|
|
|
From-but-was-not-signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
|
|
Will-sign-off-after-Johannes: Mel Gorman <mgorman@suse.de>
|
|
---
|
|
mm/vmscan.c | 2 +-
|
|
1 files changed, 1 insertions(+), 1 deletions(-)
|
|
|
|
diff --git a/mm/vmscan.c b/mm/vmscan.c
|
|
index f6b435c..af24d1e 100644
|
|
--- a/mm/vmscan.c
|
|
+++ b/mm/vmscan.c
|
|
@@ -2286,7 +2286,7 @@ static bool sleeping_prematurely(pg_data_t *pgdat, int order, long remaining,
|
|
* must be balanced
|
|
*/
|
|
if (order)
|
|
- return pgdat_balanced(pgdat, balanced, classzone_idx);
|
|
+ return !pgdat_balanced(pgdat, balanced, classzone_idx);
|
|
else
|
|
return !all_zones_ok;
|
|
}
|
|
--
|
|
1.7.3.4
|