Re: [patch 00/14] Page cache cleanup in anticipation of Large Blocksize support

Christoph Lameter
2007-06-14T21:20:18Z

On Thu, 14 Jun 2007, Andrew Morton wrote:

> If we never inflict variable PAGE_CACHE_SIZE upon the kernel, these changes
> become pointless obfuscation.

But there is no such resonable scenario that I am aware of unless we
continue to add workarounds for the issues covered here to the VM.

And it was pointed out to you that such approach can never stand in place
of the different uses of having a larger page cache.

> I think the best way to proceed would be to investigate that _general_
> optimisation and then, based upon the results of that work, decide whether
> further _specialised_ changes such as variable PAGE_CACHE_SIZE are needed,
> and if so, what they should be.

As has been pointed out performance is only one beneficial issue of
having a higher page cache. It is doubtful in principle that the proposed
alternative can work given that locking overhead and management overhead
by the VM are not minimized but made more complex by your envisioned
solution.

The solution here significantly cleans up the page cache even if we never
go to the variable page cache. If we do get there then numerous
workarounds that we have in the tree because of not supporting larger I/O
go away cleaning up the VM further. The large disk sizes can be handled in
a reasonable way (f.e. fsck times would decrease) since we can handle
large contiguous chunks of memory. This is a necessary strategic move for
the Linux kernel. It would also pave the way of managing large chunks
of contiguous memory for other ways and has the potential of getting rid
of such sore spots as the hugetlb filesystem.