From: Christoph Lameter <clameter@sgi.com>
To: linux-kernel@vger.kernel.org
Cc: Christoph Lameter <clameter@sgi.com>
Subject: [RFC3 05/14] Resurrect scan_control.may_swap
Date: Wed, 14 Dec 2005 16:32:17 -0800 (PST) [thread overview]
Message-ID: <20051215003217.31788.17771.sendpatchset@schroedinger.engr.sgi.com> (raw)
In-Reply-To: <20051215003151.31788.8755.sendpatchset@schroedinger.engr.sgi.com>
Resurrect may_swap in struct scan_control
Undo the patch to remove may_writepage from mm.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Index: linux-2.6.15-rc5-mm2/mm/vmscan.c
===================================================================
--- linux-2.6.15-rc5-mm2.orig/mm/vmscan.c 2005-12-14 14:57:29.000000000 -0800
+++ linux-2.6.15-rc5-mm2/mm/vmscan.c 2005-12-14 15:24:19.000000000 -0800
@@ -71,6 +71,9 @@ struct scan_control {
int may_writepage;
+ /* Can pages be swapped as part of reclaim? */
+ int may_swap;
+
/* This context's SWAP_CLUSTER_MAX. If freeing memory for
* suspend, we effectively ignore SWAP_CLUSTER_MAX.
* In this context, it doesn't matter that we scan the
@@ -458,6 +461,8 @@ static int shrink_list(struct list_head
* Try to allocate it some swap space here.
*/
if (PageAnon(page) && !PageSwapCache(page)) {
+ if (!sc->may_swap)
+ goto keep_locked;
if (!add_to_swap(page, GFP_ATOMIC))
goto activate_locked;
}
@@ -1415,6 +1420,7 @@ int try_to_free_pages(struct zone **zone
sc.gfp_mask = gfp_mask;
sc.may_writepage = 0;
+ sc.may_swap = 1;
inc_page_state(allocstall);
@@ -1517,6 +1523,7 @@ loop_again:
total_reclaimed = 0;
sc.gfp_mask = GFP_KERNEL;
sc.may_writepage = 0;
+ sc.may_swap = 1;
sc.nr_mapped = global_page_state(NR_MAPPED);
inc_page_state(pageoutrun);
next prev parent reply other threads:[~2005-12-15 0:32 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-15 0:31 [RFC3 00/14] Zoned VM stats Christoph Lameter
2005-12-15 0:31 ` [RFC3 01/14] Add some consts for inlines in mm.h Christoph Lameter
2005-12-15 0:32 ` [RFC3 02/14] Basic counter functionality Christoph Lameter
2005-12-15 0:32 ` [RFC3 03/14] Convert nr_mapped Christoph Lameter
2005-12-15 0:32 ` [RFC3 04/14] Convert nr_pagecache Christoph Lameter
2005-12-15 0:32 ` Christoph Lameter [this message]
2005-12-15 0:32 ` [RFC3 06/14] Zone Reclaim Christoph Lameter
2005-12-15 0:32 ` [RFC3 07/14] Expanded node and zone statistics Christoph Lameter
2005-12-15 0:32 ` [RFC3 08/14] Convert nr_slab Christoph Lameter
2005-12-15 0:32 ` [RFC3 09/14] Convert nr_page_table Christoph Lameter
2005-12-15 0:32 ` [RFC3 10/14] Convert nr_dirty Christoph Lameter
2005-12-15 0:32 ` [RFC3 11/14] Convert nr_writeback Christoph Lameter
2005-12-15 0:32 ` [RFC3 12/14] Convert nr_unstable Christoph Lameter
2005-12-15 0:33 ` [RFC3 13/14] Remove get_page_state functions Christoph Lameter
2005-12-15 0:33 ` [RFC3 14/14] Remove wbs Christoph Lameter
-- strict thread matches above, loose matches on Subject: below --
2005-12-15 0:14 [RFC3 00/14] Zoned VM stats Christoph Lameter
2005-12-15 0:14 ` [RFC3 05/14] Resurrect scan_control.may_swap Christoph Lameter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20051215003217.31788.17771.sendpatchset@schroedinger.engr.sgi.com \
--to=clameter@sgi.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox