[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <E1HVkfj-0000zn-00@dorka.pomaz.szeredi.hu>
Date: Mon, 26 Mar 2007 10:35:23 +0200
From: Miklos Szeredi <miklos@...redi.hu>
To: akpm@...ux-foundation.org
CC: dgc@....com, linux-kernel@...r.kernel.org
Subject: Re: [patch 2/3] remove throttle_vm_writeout()
> >
> > Remove this function. It's purpose was to limit the global number of
> > writeback pages from submitted by direct reclaim. But this is equally
> > well accomplished by limited queue lengths. When this function was
> > added, the device queues had much larger default lengths (8192
> > requests, now it's 128), causing problems.
>
> This changelog is wrong.
>
> Yes, the _default_ depth of CFQ was decreased. But it is trivial for the
> user to inrcrease the queue depth again, and we'd prefer that the VM not
> shit itself in response.
>
> Plus, more significantly, the queue is per-disk. A system with many disks
> will easily be able to cover all memory with under-writeback pages.
> Which is why the level of under-writeback memory is controlled at a higher
> level.
>
> These variables are why we must not reply upon per-queue throttling in
> VFS/MM/VM.
>
>
> All that being said, the patch (with a new, correct changlog) is OK. This
> is because we now control the amount of dirty memory in the machine by
> running balance_dirty_pages() at first-write-fault time. So we can no
> longer get into the situation where all memory is dirty+writeback.
Well, sort of. I think you are not taking SwapCache pages into
account, which just pop up out of nothing to be turned into writeback
pages.
So I think removing this function still relies on limited queues, or
some other method of limiting writeback.
Miklos
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists