lkml.org 
[lkml]   [2004]   [Jan]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Swapfiles broken on XFS.
Hi again.

Perhaps I wasn't clear enough.

Both the page_io and Suspend can cope fine with block size < 4096. The
issue is where they get the information from as to how many blocks per
page they actually need to use when called brw_page. At the moment, they
both assume that i_sb->s_blocksize and blocksize_bits is the place to
go. What you're saying sounds right to me. They should both be looking
at i_blkbits and i_blksize in the struct inode, shouldn't they? I'll
make the change, test and submit a patch to LKML.

Regards,

Nigel

On Sat, 2004-01-10 at 05:16, Christoph Hellwig wrote:
> On Fri, Jan 09, 2004 at 04:55:09PM +1300, Nigel Cunningham wrote:
> > It appears to me that a swapfile on an XFS filesystem will not work, at
> > least some of the time.
>
> XFS sets s_blocksize to the filesystem blocksize and bdev->bd_block_size /
> i_blkbits to the XFS sector size. The first would be 4096 in your
> case and the latter 512. We cannot set a bigger device block size because
> XFS log writes are in 512b units.
>
> I don't think the swap code should do any assumptions about any relation
> of the above two.
--
My work on Software Suspend is graciously brought to you by
LinuxFund.org.
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2005-03-22 13:59    [W:4.440 / U:0.220 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site