[Linux-cluster] Found unlinked inode

David Teigland teigland at redhat.com
Wed Sep 26 15:52:15 UTC 2007


On Wed, Sep 26, 2007 at 05:40:59PM +0200, Borgstr??m Jonas wrote:
> Hi again,
> 
> I was just able to reproduce the filesystem corruption again. This time
> four lost zero-sized inodes were found :( And unfortunately
> mounting+umounting the filesystem didn't make the lost inodes go away.
> I still have a copy of the corrupted filesystem if there is any more
> things you want me to test.

I still think this is probably expected and cleaned up properly by gfs.
When you mount you should see something like this:

GFS: fsid=bull:x.2: jid=2: Trying to acquire journal lock...
GFS: fsid=bull:x.2: jid=2: Looking at journal...
GFS: fsid=bull:x.2: jid=2: Done
GFS: fsid=bull:x.2: Scanning for log elements...
GFS: fsid=bull:x.2: Found 48 unlinked inodes
GFS: fsid=bull:x.2: Found quota changes for 0 IDs
GFS: fsid=bull:x.2: Done

It suspect the unlinked inodes found by fsck are the same as those gfs
finds in the journal when mounting.  Note that a cleanly shut down journal
may still have records of unlinked inodes that need to be deallocated.

You may need to mount/unmount all of the journals (so all journals are
replayed).  something like

mount -t gfs /dev/foo /gfs -o lockproto=lock_nolock hostdata=jid=0
umount /gfs
mount -t gfs /dev/foo /gfs -o lockproto=lock_nolock hostdata=jid=1
umount /gfs
mount -t gfs /dev/foo /gfs -o lockproto=lock_nolock hostdata=jid=2
umount /gfs
etc

and then gfs may clean them up (deallocate) asynchronously after the mount
has completed, I'm not sure.

Dave




More information about the Linux-cluster mailing list