From: Andrea Arcangeli <andrea@suse.de>
To: Andrew Morton <akpm@osdl.org>
Cc: nickpiggin@yahoo.com.au, riel@redhat.com,
marcelo.tosatti@cyclades.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH][5/?] count writeback pages in nr_scanned
Date: Thu, 6 Jan 2005 06:59:05 +0100 [thread overview]
Message-ID: <20050106055905.GT4597@dualathlon.random> (raw)
In-Reply-To: <20050105213704.0282316f.akpm@osdl.org>
On Wed, Jan 05, 2005 at 09:37:04PM -0800, Andrew Morton wrote:
> Andrea Arcangeli <andrea@suse.de> wrote:
> >
> > 2) we won't need unreliable anti-deadlock timeouts anymore
>
> The timeouts are for:
>
> a) A fallback for backing stores which don't wake up waiters in
> blk_congestion_wait() (eg: NFS).
that anti-deadlock will be unnecessary too with the new logic.
> b) handling the race case where the request queue suddenly goes empty
> before the sleeper gets onto the waitqueue.
as I mentioned with proper locking setting task in uninterruptible and
then registering into the new per classzone waitqueue, the timeout will
be unnecessary even for this.
> It can probably be removed with some work, and additional locking.
The additional locking will then remove the current locking in
blk_congestion_wait so it's new locking but it will replace the current
locking. But I agree registering in the waitqueue inside the
blk_congestion_wait was simpler. It's just I've an hard time to like the
timeout. Timeout is always wrong when it triggers: if it triggers it
always triggers either too late (wasted resources) or too early (early
oom kills). So unless it messes everything up, it'd be nice to the
locking strict. anyway point 1 and 2 can be implemented separately, at
first we can leave the timeout if the race is too hard to handle.
Ideally if we keep the total number of oustanding writebacks
per-classzone (not sure if we account for it already somewhere, I guess
if something we've the global number and not the per-classzone one), we
could remove the timeout without having to expose the locking outside
blk_congestion_wait. With the number of oustanding writebacks
per-classzone we could truly fix the race and obsolete the timeout in a
self contained manner. Though it will require a proper amount of memory
barriers around the account increment/decrement/read.
next prev parent reply other threads:[~2005-01-06 5:58 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-03 17:25 [PATCH][5/?] count writeback pages in nr_scanned Rik van Riel
2005-01-05 10:08 ` Andrew Morton
2005-01-05 18:06 ` Andrea Arcangeli
2005-01-05 18:50 ` Rik van Riel
2005-01-05 17:49 ` Marcelo Tosatti
2005-01-05 21:44 ` Andrew Morton
2005-01-05 20:32 ` Marcelo Tosatti
2005-01-05 23:51 ` Nick Piggin
2005-01-06 1:27 ` Rik van Riel
2005-01-06 1:33 ` Nick Piggin
2005-01-06 1:37 ` Andrew Morton
2005-01-06 1:40 ` Nick Piggin
2005-01-06 1:52 ` Andrea Arcangeli
2005-01-06 1:36 ` Andrew Morton
2005-01-06 3:42 ` Rik van Riel
2005-01-06 3:50 ` Nick Piggin
2005-01-06 4:26 ` Andrew Morton
2005-01-06 4:35 ` Nick Piggin
2005-01-06 4:47 ` Andrew Morton
2005-01-06 4:55 ` Nick Piggin
2005-01-06 5:03 ` Andrea Arcangeli
2005-01-06 8:06 ` Jens Axboe
2005-01-06 8:16 ` memory barrier in ll_rw_blk.c (was Re: [PATCH][5/?] count writeback pages in nr_scanned) Nick Piggin
2005-01-06 8:32 ` Jens Axboe
2005-01-06 8:53 ` Nick Piggin
2005-01-06 12:00 ` Jens Axboe
2005-01-06 4:59 ` [PATCH][5/?] count writeback pages in nr_scanned Andrea Arcangeli
2005-01-06 5:05 ` Andrew Morton
2005-01-06 5:17 ` Andrea Arcangeli
2005-01-06 5:19 ` Nick Piggin
2005-01-06 5:25 ` Andrea Arcangeli
2005-01-06 5:36 ` Nick Piggin
2005-01-06 5:44 ` Nick Piggin
2005-01-06 5:37 ` Andrew Morton
2005-01-06 5:59 ` Andrea Arcangeli [this message]
2005-01-06 13:28 ` Rik van Riel
2005-01-06 5:32 ` Andrew Morton
2005-01-06 5:46 ` Andrea Arcangeli
2005-01-06 5:59 ` Andrew Morton
2005-01-06 6:16 ` Andrea Arcangeli
2005-01-06 5:06 ` Nick Piggin
2005-01-06 5:21 ` Andrea Arcangeli
2005-01-05 23:26 ` 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=20050106055905.GT4597@dualathlon.random \
--to=andrea@suse.de \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.tosatti@cyclades.com \
--cc=nickpiggin@yahoo.com.au \
--cc=riel@redhat.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.