Re: [PATCH] mm: add strictlimit knob
From: Maxim Patlasov
Date: Wed Nov 06 2013 - 09:31:18 EST
Hi Andrew,
On 11/05/2013 02:01 AM, Andrew Morton wrote:
On Fri, 01 Nov 2013 18:31:40 +0400 Maxim Patlasov <MPatlasov@xxxxxxxxxxxxx> wrote:
"strictlimit" feature was introduced to enforce per-bdi dirty limits for
FUSE which sets bdi max_ratio to 1% by default:
http://www.http.com//article.gmane.org/gmane.linux.kernel.mm/105809
However the feature can be useful for other relatively slow or untrusted
BDIs like USB flash drives and DVD+RW. The patch adds a knob to enable the
feature:
echo 1 > /sys/class/bdi/X:Y/strictlimit
Being enabled, the feature enforces bdi max_ratio limit even if global (10%)
dirty limit is not reached. Of course, the effect is not visible until
max_ratio is decreased to some reasonable value.
I suggest replacing "max_ratio" here with the much more informative
"/sys/class/bdi/X:Y/max_ratio".
Also, Documentation/ABI/testing/sysfs-class-bdi will need an update
please.
OK, I'll update it, fix patch description and re-send the patch.
mm/backing-dev.c | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
I'm not really sure what to make of the patch. I assume you tested it
and observed some effect. Could you please describe the test setup and
the effects in some detail?
I plugged 16GB USB-flash in a node with 8GB RAM running 3.12.0-rc7 and
started writing a huge file by "dd" (from /dev/zero to USB-flash
mount-point). While writing I was observing "Dirty" counter as reported
by /proc/meminfo. As expected it stabilized on a level about 1.2GB (15%
of total RAM). Immediately after dd completed, the "umount" command took
about 5 minutes. This corresponded to 5MB write throughput of the flash
drive.
Then I repeated the experiment after setting tunables:
echo 1 > /sys/class/bdi/8\:16/max_ratio
echo 1 > /sys/class/bdi/8\:16/strictlimit
This time, "Dirty" counter became 100 times lesser - about 12MB and
"umount" took about a second.
Thanks,
Maxim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/