Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Nov 2013 21:51:46 +0100
From:      Andreas Longwitz <longwitz@incore.de>
To:        freebsd-fs@freebsd.org
Subject:   [ffs] ffs_valloc: free inode /home/19 had 128 blocks
Message-ID:  <529509E2.4090903@incore.de>

next in thread | raw e-mail | index | archive | help
I run FreeBSD 8.4-STABLE #0 r256119 and I am confused about the message
coming from the code snippet

 if (DIP(ip, i_blocks) && (fs->fs_flags & FS_UNCLEAN) == 0) {  /* XXX */
         printf("free inode %s/%lu had %ld blocks\n",
             fs->fs_fsmnt, (u_long)ino, (long)DIP(ip, i_blocks));
         DIP_SET(ip, i_blocks, 0);
 }

in the function ffs_valloc(). I see these kernel messages often when a
snapshot is taken on a gjournaled ufs partition with

  mount -u -o noatime -o async -o snapshot /home/.snap/snaptest /home

The inode number (19) is always the inode number of the snapshot file.

I would like to know if the 128 blocks are lost forever. If "yes" there
is really a problem. If "no" then the message is not relevant for
gjournaled file systems and fs->fs_flags should be tested in this way:
    (fs->fs_flags & FS_UNCLEAN|FS_GJOURNAL) == 0

-- 
Andreas Longwitz




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?529509E2.4090903>