All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Hugh Dickins <hugh@veritas.com>
Cc: Lee Revell <rlrevell@joe-job.com>, Ingo Molnar <mingo@elte.hu>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.16-rc1: 28ms latency when process with lots of swapped memory exits
Date: Wed, 15 Mar 2006 22:19:04 +1100	[thread overview]
Message-ID: <4417F828.1070605@yahoo.com.au> (raw)
In-Reply-To: <Pine.LNX.4.61.0603150721040.9086@goblin.wat.veritas.com>

Hugh Dickins wrote:

> Oh, thank you for forcing me to take another look, 2.6.15 did make a
> regression there, and this one is very simply remedied: Lee, please
> try the patch below (I've done it against 2.6.16-rc6 because that's
> what I have to hand; and would be a better tree for you to test),
> and let us know if it fixes your case as I expect - thanks.
> 
> (Robin Holt observed how inefficient the small ZAP_BLOCK_SIZE was on
> very sparse mmaps, as originally implemented; so he and Nick reworked
> it to count only real work done; but the swap entries got put on the
> side of "no real work", whereas you've found they may involve very
> significant work.  My patch below reverses that: yes, I've got some
> other cases now going the slow way when they needn't, but they're
> too rare to clutter the code for.)
> 

I think this patch looks good, thanks Hugh.

> Hugh
> 
> --- 2.6.16-rc6/mm/memory.c	2006-03-12 15:25:45.000000000 +0000
> +++ linux/mm/memory.c	2006-03-15 07:32:36.000000000 +0000
> @@ -623,11 +623,12 @@ static unsigned long zap_pte_range(struc
>  			(*zap_work)--;
>  			continue;
>  		}
> +
> +		(*zap_work) -= PAGE_SIZE;
> +
>  		if (pte_present(ptent)) {
>  			struct page *page;
>  
> -			(*zap_work) -= PAGE_SIZE;
> -
>  			page = vm_normal_page(vma, addr, ptent);
>  			if (unlikely(details) && page) {
>  				/*
> 


-- 
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com 

  reply	other threads:[~2006-03-15 11:19 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-14 16:15 2.6.16-rc1: 28ms latency when process with lots of swapped memory exits Lee Revell
2006-03-14 18:40 ` Hugh Dickins
2006-03-14 19:05   ` Lee Revell
2006-03-14 21:01   ` Ingo Molnar
2006-03-14 22:38     ` Lee Revell
2006-03-15  7:52       ` Hugh Dickins
2006-03-15 11:19         ` Nick Piggin [this message]
2006-03-14 21:22 ` Ingo Molnar
2006-03-14 22:12   ` Lee Revell

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=4417F828.1070605@yahoo.com.au \
    --to=nickpiggin@yahoo.com.au \
    --cc=hugh@veritas.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=rlrevell@joe-job.com \
    /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.