xfs
[Top] [All Lists]

Re: Contribution to XFS on Linux <Support block sizes larger than the pa

To: Andi Kleen <ak@xxxxxxx>, Nathan Scott <nathans@xxxxxxx>
Subject: Re: Contribution to XFS on Linux <Support block sizes larger than the page size>
From: Chandan Talukdar <chandan.talukdar@xxxxxxxxx>
Date: Sat, 01 Oct 2005 17:08:29 -0400
Cc: linux-xfs@xxxxxxxxxxx
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:user-agent:x-accept-language:mime-version:to:cc:subject:references:in-reply-to:content-type:content-transfer-encoding; b=e09GJj5eTU3suN19noGpCvIWxNGgYCanjRFKI5LJH4vUtMQTBmHzZTZqSfF0RMZqkPQW3BTV1SGfC+1LpaimhSyvJHRgus7q21NlLNfQILChOhLVvb73VuTHM4DO11PgCQm4mpbjbSYkePaAwTVplrL+zAaqe9WyvsE9ioO6NLA=
In-reply-to: <p73r7b63fxp.fsf@xxxxxxxxxxxxx>
References: <433C5DEE.6020306@xxxxxxxxx> <20050929230058.GD823@frodo> <p73r7b63fxp.fsf@xxxxxxxxxxxxx>
Sender: linux-xfs-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax)
Hi,

Thanks for your responses. I have one more query:

My filesystem development experience has been on systems with separate buffer cache and page cache. But Linux has a unified file cache. So, any recommended reading for getting a feel of the differences in implementation would be much appreciated.

Thanks,
--Chandan


Andi Kleen wrote:
Nathan Scott <nathans@xxxxxxx> writes:

The main problem here is that this is more a Linux VM limitation than
a XFS limitation.


The first way would be to allow the PAGE_CACHE_SIZE to be increased,
which then reduces the problem to ensuring the increased page size
covers all interesting blocksizes (the core XFS code, & XFS on IRIX,
allows blocksizes in powers of 2 between 512 bytes to 64 kilobytes
currently).


I don't think it would be a good idea. Allocating so many pages
with order > 0 would very likely bring the VM into a nervous
breakdown. At least you would need to fix the fragmentation in there first (there have been some approaches for this, but nothing in mainline)
Increasing PAGE_SIZE too would avoid that, but that would require
fixing the low level code in each architectures that maps pages from
page cache into user processes.  That would be probably a good thing
(there has been long talk to have larger softpagesizes on i386/x86-64
because it's not really efficient to manage multiple GB of memory in
4K pieces), but is definitely major work. There have been patches for
that in the past, but they never were remotely usable and quite
complex.


Last time I discussed this with Christoph (a long time back now),
I think he favoured the first approach above.  I suspect the NTFS


I don't see how you can make it work without major effort.

-Andi



<Prev in Thread] Current Thread [Next in Thread>