On Tue, Sep 27, 2011 at 06:28:37PM -0500, Michael Cronenworth wrote:
> I enabled 64-bit inodes on a 18.104.22.168 kernel system. I ran into
> some software that did not handle this well, so I wanted to go back
> to 32-bit inodes. When I booted into the system again, any files
> that were created while in 64-bit inode mode are inaccessable and
> are shown to me like this:
> $ ls -l /var/lib/mock/
> ls: cannot access /var/lib/mock/dist-5E-build-373-1401: Invalid argument
> ??????????? ? ? ? ? ? dist-5E-build-373-1401
> I was led to believe that this would not cause problems, but it has.
I'm pretty sure this was fixed in 2.6.37. There's nothing wrong with
the filesystem, just the kernel code had an arbitrary restriction on
where inodes code be read from in 32-bit inode mode. That was
removed in commit d276734 ("xfs: fix bogus m_maxagi check in
> I have run xfs_repair on the file system but the old files still remain.
> Are there any other things I can do to fix this? One thought is to
> remount with 64-bit inodes and erase or copy the offending files,
> but is that my only option?
xfs_reno is a tool designed to move all 64 bit inodes back into the
32 bit inode space again.