On Mon, Nov 21, 2011 at 03:46:04PM -0500, Peter Kimball wrote:
> On Nov 20, 2011, at 2:10 PM, Christoph Hellwig wrote:
> > On Fri, Nov 18, 2011 at 12:33:16PM -0500, Peter Kimball wrote:
> >> I created a blank 1GB disk image, created an XFS filesystem on
> >> that image, and mounted it on a loopback device using the ino64
> >> flag.
> >> I wrote a bunch of data to the filesystem (lots of small
> >> files), approximately 600MB.
> >> At this point, I think I have a filesystem in which inodes use
> >> 64-bit addresses, even if the actual address value would fit in
> >> 32 bits. I would expect any program that can't handle 64-bit
> >> addresses to barf when trying to access any data on the
> >> filesystem.
> > You will never not see 64-bit inodes on a filesystem that small
> > ever. Try to create a (sparse) 10TB loop image, and create some
> > deep directories in it. This should create some larger inodes
> > number for you if you had it mounted with the inode64 flag. You
> > can verify that by checking that the inode number returned from
> > the stat systsem call or from ls -i is larger than 32 bits.
> Thank you for that guide, Christoph. I followed your directions
> and the directory tree I created included some >32-bit inode
> numbers so I was able to successfully test all of our NFS clients.
> From what I'd read, I thought that the ino64 mount option would do
> the work for me (bring 32-bit inode numbers into 64-bit range),
> apparently that is not the case. This method worked great,
> hopefully the next person to search can find this happy thread.
The ino64 mount option does not exist any more - it got removed
quite some time ago as it was debug-only code that nobody ever
tested or verified did the right thing...