xfs
[Top] [All Lists]

Re: xfs_fsr allocation group optimization

To: Chris Wedgwood <cw@xxxxxxxx>
Subject: Re: xfs_fsr allocation group optimization
From: Johan Andersson <johan@xxxxxxxxx>
Date: Mon, 11 Jun 2007 12:39:13 +0200
Cc: xfs@xxxxxxxxxxx
In-reply-to: <20070611094133.GA31108@xxxxxxxxxxxxxxxxxxxxx>
References: <1181544692.19145.44.camel@xxxxxxxxxxxxxxxxxxxxxxxxx> <20070611073559.GA26257@xxxxxxxxxxxxxxxxxxxxx> <1181551409.19145.57.camel@xxxxxxxxxxxxxxxxxxxxxxxxx> <20070611090138.GA28907@xxxxxxxxxxxxxxxxxxxxx> <1181553356.19145.65.camel@xxxxxxxxxxxxxxxxxxxxxxxxx> <20070611094133.GA31108@xxxxxxxxxxxxxxxxxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
On Mon, 2007-06-11 at 02:41 -0700, Chris Wedgwood wrote:
> On Mon, Jun 11, 2007 at 11:15:56AM +0200, Johan Andersson wrote:
> 
> > This is exactly what the simple but ugly patch I attached achieves
> > by looking up the filename of the inode it defrags when doing a full
> > file system defrag. And it works well, except that it spends a lot
> > of time finding that file name. As I said, a better option would be
> > if you could tell XFS in what AG you want extents for a newly
> > created file to place it's extents in.
> 
> AGs can be large, you really want to say 'allocate near ...'

Yes, absolutely, if that was possible. But with the current XFS, at
least we can place it in the same AG. In the way xfs_fsr operates now,
in almost all user space, I don't see any good way to tell XFS where to
place the extents, other than creating the temporary file in the same
directory as the original file.

My question is really, is there a better way than "find -xdev -inum" to
find what file points to a given inode? It would solve our immediate
problem with xfs_fsr destroying locality of files, while still
optimising the file system properly.

/Johan Andersson



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