On Tue, 21 Dec 1999, Stephen C. Tweedie wrote:
>We cannot use the buffer.c dirty list anyway because bdflush can write
>those buffers to disk at any time. Transactions have to control the
So you are talking about replacing this line:
dirty = size_buffers_type[BUF_DIRTY] >> PAGE_SHIFT;
with:
dirty = (size_buffers_type[BUF_DIRTY]+size_buffers_type[BUF_PINNED]) >>
PAGE_SHIFT;
If you don't do that you don't need _two_ filesystems to generate too many
dirty buffers but you can potentially go OOM with only one journaling
filesystem running. As you talked about a _two_ filesystem case generating
dirty buffers on 100% of memory I thought you was talking about something
very different than the above one liner. If you was talking about it
that's fine and I agree of course.
>We're not talking about normal filesystems. :)
With "normal" filesystems I meant filesystems that are _using_
linux/fs/buffer.c.
Andrea