All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chuck Ebbert <76306.1226@compuserve.com>
To: Chris Friesen <cfriesen@nortelnetworks.com>
Cc: linux-kernel <linux-kernel@vger.kernel.org>,
	Chris Ross <chris@tebibyte.org>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: Linux 2.6.9-ac16
Date: Tue, 21 Dec 2004 04:11:41 -0500	[thread overview]
Message-ID: <200412210413_MC3-1-9172-2609@compuserve.com> (raw)

Chris Friesen wrote:

> Chuck Ebbert wrote:
> 
> >  Nobody has found an answer for the freezes, which persist even in the latest
> > 2.6.10-rc but there's a vm_writeout throttling patch in -ac that I haven't tried.
>
> Heh.  Figures.  Those freezes are what bothers me most, since I've already got a 
> patch that protects critical processes from being OOM-killed as long as they're 
> sane.

 I backported this patch to 2.6.9 but haven't tested it yet.  It requires the
'spurious oomkill' patch I posted earlier in this thread.  Early reports
are that it stops the freezes during heavy paging.

 Also appended is a newer patch from Andrew that may help as well.  It's obviously
correct but I haven't done anything with it yet so it may not apply to 2.6.9.

===================================================================================
# mm_swap_token_timeout.patch
#
#       Disable token-based thrashing control when token
#       timeout is zero and make zero the default value.
#
#       NOTE: On 2.6.9 there is no way to change the
#       token timeout at runtime like there is on 2.6.10.
#       You must edit mm/thrash.c instead.
#
#       Patch by Con Kolivas for 2.6.10-rc3 20 Dec 2004
#       Backported to 2.6.9 by Chuck Ebbert
#
--- 2.6.9.1/mm/rmap.c
+++ 2.6.9.2/mm/rmap.c
@@ -395,6 +395,9 @@ int page_referenced(struct page *page, i
 {
        int referenced = 0;
 
+       if (!SWAP_TOKEN_TIMEOUT)
+               ignore_token = 1;
+
        if (page_test_and_clear_young(page))
                referenced++;
 
--- 2.6.9.1/mm/thrash.c
+++ 2.6.9.2/mm/thrash.c
@@ -19,7 +19,10 @@ unsigned long swap_token_check;
 struct mm_struct * swap_token_mm = &init_mm;
 
 #define SWAP_TOKEN_CHECK_INTERVAL (HZ * 2)
-#define SWAP_TOKEN_TIMEOUT (HZ * 300)
+#define SWAP_TOKEN_TIMEOUT     0
+/*
+ * Currently disabled; Needs further code to work at HZ * 300.
+ */
 
 /*
  * Take the token away if the process had no page faults
===================================================================================
# We haven't been incrementing local variable total_scanned since the
# scan_control stuff went in.  That broke kswapd throttling.
# 
# Signed-off-by: Andrew Morton <akpm@osdl.org>
# ---
# 
#  25-akpm/mm/vmscan.c |    1 +
#  1 files changed, 1 insertion(+)
# 
# diff -puN mm/vmscan.c~vmscan-total_scanned-fix mm/vmscan.c
--- 25/mm/vmscan.c~vmscan-total_scanned-fix     2004-12-20 12:47:25.855643408 -0800
+++ 25-akpm/mm/vmscan.c 2004-12-20 12:47:25.860642648 -0800
@@ -1063,6 +1063,7 @@ scan:
                        shrink_slab(sc.nr_scanned, GFP_KERNEL, lru_pages);
                        sc.nr_reclaimed += reclaim_state->reclaimed_slab;
                        total_reclaimed += sc.nr_reclaimed;
+                       total_scanned += sc.nr_scanned;
                        if (zone->all_unreclaimable)
                                continue;
                        if (zone->pages_scanned >= (zone->nr_active +
===================================================================================
--
Please take it as a sign of my infinite respect for you,
that I insist on you doing all the work.
                                        -- Rusty Russell

             reply	other threads:[~2004-12-21  9:20 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-21  9:11 Chuck Ebbert [this message]
  -- strict thread matches above, loose matches on Subject: below --
2004-12-22  6:44 Linux 2.6.9-ac16 Chuck Ebbert
2004-12-21 23:49 Chuck Ebbert
2004-12-21 23:58 ` Nick Piggin
2004-12-22  2:49 ` Con Kolivas
2004-12-17 23:35 Chuck Ebbert
2004-12-20 17:27 ` Chris Friesen
2004-12-16 18:43 Alan Cox
2004-12-17 11:23 ` Arjan van de Ven
2004-12-17 18:54   ` Francois Romieu
2004-12-17 13:08 ` Chris Ross
2004-12-17 14:51   ` Chris Friesen
2004-12-17 15:45     ` Chris Ross
2004-12-18  6:01       ` Thomas Gleixner
2004-12-18 15:11         ` Bill Davidsen
2004-12-18 15:06           ` Jan Engelhardt
2004-12-18 16:01             ` Chris Ross
2004-12-20 14:48             ` Alan Cox
2004-12-20 16:19               ` Chris Ross
2004-12-20 19:54                 ` Alan Cox
2004-12-19 16:22           ` Thomas Gleixner

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=200412210413_MC3-1-9172-2609@compuserve.com \
    --to=76306.1226@compuserve.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=cfriesen@nortelnetworks.com \
    --cc=chris@tebibyte.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.