All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cedric Le Goater <clg@fr.ibm.com>
To: Christoph Lameter <clameter@sgi.com>
Cc: Andrew Morton <akpm@osdl.org>,
	linux-kernel@vger.kernel.org,
	Trond Myklebust <trond.myklebust@fys.uio.no>
Subject: Re: 2.6.16-rc6-mm2
Date: Tue, 13 Jun 2006 22:22:34 +0200	[thread overview]
Message-ID: <448F1E8A.3030202@fr.ibm.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0606131234010.31186@schroedinger.engr.sgi.com>

Christoph Lameter wrote:
> On Tue, 13 Jun 2006, Christoph Lameter wrote:
> 
>> On Tue, 13 Jun 2006, Cedric Le Goater wrote:
>>
>>> thanks for the patch ! I gave it a try but req->wb_page seems bogus ?
>> It seems that req->wb_page is bogus after nfs_clear_page_writeback()
>> has run. So we need to do the statistics before.
> 
> But then we miss the decrement of NR_UNSTABLE when a page is freed before 
> we get to that function. NR_UNSTABLE grows beyond bounds and the write 
> throttling stalls processes.
> 
> So we need an additional dec_zone_state..
> 
> Index: linux-2.6.17-rc6-mm2/fs/nfs/write.c
> ===================================================================
> --- linux-2.6.17-rc6-mm2.orig/fs/nfs/write.c	2006-06-10 11:11:53.051397816 -0700
> +++ linux-2.6.17-rc6-mm2/fs/nfs/write.c	2006-06-13 10:52:04.428456013 -0700
> @@ -1418,8 +1418,9 @@ static void nfs_commit_done(struct rpc_t
>  		dprintk(" mismatch\n");
>  		nfs_mark_request_dirty(req);
>  	next:
> +		if (req->wb_page)
> +			dec_zone_page_state(req->wb_page, NR_UNSTABLE);
>  		nfs_clear_page_writeback(req);
> -		dec_zone_page_state(req->wb_page, NR_UNSTABLE);
>  	}
>  }
>  
> Index: linux-2.6.17-rc6-mm2/fs/nfs/pagelist.c
> ===================================================================
> --- linux-2.6.17-rc6-mm2.orig/fs/nfs/pagelist.c	2006-06-10 11:11:53.049444812 -0700
> +++ linux-2.6.17-rc6-mm2/fs/nfs/pagelist.c	2006-06-13 12:33:39.545259204 -0700
> @@ -154,6 +154,7 @@ void nfs_clear_request(struct nfs_page *
>  {
>  	struct page *page = req->wb_page;
>  	if (page != NULL) {
> +		dec_zone_page_state(page, NR_UNSTABLE);
>  		page_cache_release(page);
>  		req->wb_page = NULL;
>  	}

NFS write seems to work fine with that patch. No more oops.

thanks !

C.

  reply	other threads:[~2006-06-13 20:22 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-10  4:40 2.6.16-rc6-mm2 Andrew Morton
2006-06-10 10:23 ` 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-10 16:24   ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-10 16:43     ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-10 16:51       ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-10 17:03         ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-10 18:04           ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-10 18:14             ` 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-10 18:31               ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-10 18:35                 ` 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-12 11:05                 ` 2.6.16-rc6-mm2 Ingo Molnar
2006-06-12 11:48                   ` 2.6.16-rc6-mm2 Ingo Molnar
2006-06-12 12:14                     ` 2.6.16-rc6-mm2 Andi Kleen
2006-06-12 13:07                       ` 2.6.16-rc6-mm2 Ingo Molnar
2006-06-12 13:41                         ` 2.6.16-rc6-mm2 Andi Kleen
2006-06-13  3:28                       ` 2.6.16-rc6-mm2 Keith Owens
2006-06-13  4:56                         ` 2.6.16-rc6-mm2 Andi Kleen
2006-06-13  5:08                           ` 2.6.16-rc6-mm2 Keith Owens
2006-06-13  5:18                             ` 2.6.16-rc6-mm2 Andi Kleen
2006-06-13  5:43                               ` 2.6.16-rc6-mm2 Nick Piggin
2006-06-13  5:48                                 ` 2.6.16-rc6-mm2 Andi Kleen
2006-06-13 11:45                             ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-13 12:41                               ` 2.6.16-rc6-mm2 Keith Owens
2006-06-12 16:37                     ` broken local_t on i386 Christoph Lameter
2006-06-12 16:48                       ` Andi Kleen
2006-06-12 16:54                         ` Christoph Lameter
2006-06-12 17:06                           ` Andi Kleen
2006-06-12 17:11                             ` Christoph Lameter
2006-06-12 17:29                               ` Andi Kleen
2006-06-12 18:14                             ` Lee Revell
2006-06-12 18:46                               ` Alan Cox
2006-06-12 18:27                             ` Christoph Lameter
2006-06-12 17:35                               ` Andi Kleen
2006-06-12 18:42                                 ` Christoph Lameter
2006-06-12 17:55                                   ` Andi Kleen
2006-06-12 18:59                                     ` Christoph Lameter
2006-06-12 18:11                                       ` Andi Kleen
2006-06-12 19:15                                         ` Christoph Lameter
2006-06-13  3:36                                           ` Andi Kleen
2006-06-12 20:12                                         ` Alan Cox
2006-06-13  4:02                                           ` Andi Kleen
2006-06-12 13:50                   ` 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-12 14:20                     ` 2.6.16-rc6-mm2 Ingo Molnar
2006-06-12 14:57                       ` 2.6.16-rc6-mm2 Michal Piotrowski
     [not found]               ` <6bffcb0e0606101126v55cc20dbk275d8aa7fdcb0f1a@mail.gmail.com>
2006-06-10 18:36                 ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-10 19:08                   ` 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-10 16:58       ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-10 14:56 ` 2.6.16-rc6-mm2 Martin J. Bligh
2006-06-10 14:56   ` 2.6.16-rc6-mm2 Martin J. Bligh
2006-06-10 15:40   ` 2.6.16-rc6-mm2 Felix Oxley
2006-06-10 16:43   ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-10 16:43     ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-10 16:18 ` 2.6.16-rc6-mm2 Dominik Karall
2006-06-10 16:25   ` 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-10 17:42     ` 2.6.16-rc6-mm2 Dominik Karall
2006-06-10 18:43       ` 2.6.16-rc6-mm2 Rafael J. Wysocki
2006-06-11 10:17         ` 2.6.16-rc6-mm2 Jan Engelhardt
2006-06-11 10:58           ` 2.6.16-rc6-mm2 Rafael J. Wysocki
2006-06-12 16:56 ` 2.6.16-rc6-mm2 Zan Lynx
2006-06-12 17:35 ` 2.6.16-rc6-mm2 Cedric Le Goater
2006-06-12 20:55   ` Fwd: 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-12 22:16   ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-13  0:24     ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-14 21:56       ` 2.6.16-rc6-mm2 Trond Myklebust
2006-06-13  7:22     ` 2.6.16-rc6-mm2 Cedric Le Goater
2006-06-13 17:54       ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-13 19:35         ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-13 20:22           ` Cedric Le Goater [this message]
2006-06-13 21:13             ` 2.6.16-rc6-mm2 Christoph Lameter
2006-06-13 21:50               ` 2.6.16-rc6-mm2 Cedric Le Goater
2006-06-12 18:19 ` 2.6.16-rc6-mm2 Badari Pulavarty
2006-06-12 20:48   ` Fwd: 2.6.16-rc6-mm2 Michal Piotrowski
2006-06-13 13:54   ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-13 17:04     ` 2.6.16-rc6-mm2 Badari Pulavarty
2006-06-12 22:09 ` 2.6.16-rc6-mm2 Steve Fox
2006-06-13 13:54   ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-13 14:10     ` 2.6.16-rc6-mm2 Sergei Shtylyov
2006-06-13 19:01       ` 2.6.16-rc6-mm2 Steve Fox
2006-06-13 21:43       ` 2.6.16-rc6-mm2 Andrew Morton
2006-06-13 21:51       ` 2.6.16-rc6-mm2 Badari Pulavarty
2006-06-13 22:36         ` 2.6.16-rc6-mm2 Steve Fox
  -- strict thread matches above, loose matches on Subject: below --
2006-03-18 12:40 2.6.16-rc6-mm2 Andrew Morton
2006-03-18 12:40 2.6.16-rc6-mm2 Andrew Morton
2006-03-18 20:21 ` 2.6.16-rc6-mm2 Rafael J. Wysocki
2006-03-18 20:54   ` 2.6.16-rc6-mm2 Andrew Morton
2006-03-18 21:24     ` 2.6.16-rc6-mm2 Rafael J. Wysocki
2006-03-22  8:41 ` 2.6.16-rc6-mm2 J.A. Magallon
2006-03-22  8:48   ` 2.6.16-rc6-mm2 Andrew Morton

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=448F1E8A.3030202@fr.ibm.com \
    --to=clg@fr.ibm.com \
    --cc=akpm@osdl.org \
    --cc=clameter@sgi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=trond.myklebust@fys.uio.no \
    /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.