From: Miklos Szeredi <miklos@szeredi.hu>
To: a.p.zijlstra@chello.nl
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
miklos@szeredi.hu, akpm@linux-foundation.org, neilb@suse.de,
dgc@sgi.com, tomoki.sekiyama.qu@hitachi.com,
nikita@clusterfs.com, trond.myklebust@fys.uio.no,
yingchao.zhou@gmail.com, andrea@suse.de
Subject: Re: [PATCH 00/17] per device dirty throttling -v7
Date: Tue, 17 Jul 2007 12:10:52 +0200 [thread overview]
Message-ID: <E1IAk16-00007f-00@dorka.pomaz.szeredi.hu> (raw)
In-Reply-To: <20070614215817.389524447@chello.nl> (message from Peter Zijlstra on Thu, 14 Jun 2007 23:58:17 +0200)
> Latest version of the per bdi dirty throttling patches.
>
> Most of the changes since last time are little cleanups and more
> detail in the split out of the floating proportion into their
> own little lib.
>
> Patches are against 2.6.22-rc4-mm2
>
> A rollup of all this against 2.6.21 is available here:
> http://programming.kicks-ass.net/kernel-patches/balance_dirty_pages/2.6.21-per_bdi_dirty_pages.patch
>
> This patch-set passes the starve an USB stick test..
I've done some testing of several problem cases.
1) fuse writable mmap patches + bash_shared_mapping
2) writes in a setup involving a loop dev
a) ext3 over loop over ext3
b) ext3 over loop over fuse-passthrough over ext3
c) ext3 over loop over ntfs-3g
Without the patch, in all the cases I've seen deadlocks or long
stalls. With the patch, I could not reproduce this in any of the
cases. As predicted, the patch is performing well in this respect :)
2a is the simplest to reproduce (2.6.22, dual core, 1GB ram)
dd if=/dev/zero of=/tmp/p5 bs=1M seek=4999 count=1
mkfs.ext3 -F /tmp/p5
mkdir /tmp/m5
mount -oloop /tmp/p5 /tmp/m5
dd if=/dev/zero of=/tmp/m5/foo bs=1M count=4000
The second dd can stall for indefinite amounts of time. Kicking it
with sync can get it moving, but it relapses after some time.
Even with the per-device-throttling patch, case 2 shows an nr_dirty
elevated far above the 10% limit, reaching 40% or higher. I believe,
this is due to a missing balance_dirty_pages() call in the loop
device. And indeed the anomaly can be solved by adding this patch:
http://lkml.org/lkml/2007/3/24/101
Miklos
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
prev parent reply other threads:[~2007-07-17 10:10 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-14 21:58 Peter Zijlstra
2007-06-14 21:58 ` [PATCH 01/17] nfs: remove congestion_end() Peter Zijlstra
2007-06-14 21:58 ` [PATCH 02/17] lib: percpu_counter variable batch Peter Zijlstra
2007-06-14 21:58 ` [PATCH 03/17] lib: percpu_counter_mod64 Peter Zijlstra
2007-06-14 21:58 ` [PATCH 04/17] lib: percpu_counter_set Peter Zijlstra
2007-06-14 21:58 ` [PATCH 05/17] lib: percpu_count_sum_signed() Peter Zijlstra
2007-07-17 16:32 ` Josef Sipek
2007-07-17 16:35 ` Josef Sipek
2007-06-14 21:58 ` [PATCH 06/17] lib: percpu_counter_init_irq Peter Zijlstra
2007-07-17 16:35 ` Josef Sipek
2007-06-14 21:58 ` [PATCH 07/17] mm: bdi init hooks Peter Zijlstra
2007-06-14 21:58 ` [PATCH 08/17] containers: " Peter Zijlstra
2007-06-14 21:58 ` [PATCH 09/17] mtd: give mtdconcat devices their own backing_dev_info Peter Zijlstra
2007-06-14 21:58 ` [PATCH 10/17] mm: scalable bdi statistics counters Peter Zijlstra
2007-06-14 21:58 ` [PATCH 11/17] mm: count reclaimable pages per BDI Peter Zijlstra
2007-06-14 21:58 ` [PATCH 12/17] mm: count writeback " Peter Zijlstra
2007-06-14 21:58 ` [PATCH 13/17] mm: expose BDI statistics in sysfs Peter Zijlstra
2007-06-14 21:58 ` [PATCH 14/17] lib: floating proportions Peter Zijlstra
2007-06-14 21:58 ` [PATCH 15/17] lib: floating proportions _single Peter Zijlstra
2007-06-14 21:58 ` [PATCH 16/17] mm: per device dirty threshold Peter Zijlstra
2007-06-14 21:58 ` [PATCH 17/17] mm: dirty balancing for tasks Peter Zijlstra
2007-06-14 23:14 ` [PATCH 00/17] per device dirty throttling -v7 Andrew Morton
2007-07-17 10:10 ` Miklos Szeredi [this message]
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=E1IAk16-00007f-00@dorka.pomaz.szeredi.hu \
--to=miklos@szeredi.hu \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=andrea@suse.de \
--cc=dgc@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=neilb@suse.de \
--cc=nikita@clusterfs.com \
--cc=tomoki.sekiyama.qu@hitachi.com \
--cc=trond.myklebust@fys.uio.no \
--cc=yingchao.zhou@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox