In the following scenario xfs_bulkstat() returns incorrect stale inode state: 1. File_A is created and its inode synced to disk. 2. File_A is unlinked and doesn't exist anymore. 3. Filesystem sync is invoked. 4. File_B is created. File_B happens to reclaim File_A's inode. 5. xfs_bulkstat() is called and detects File_B but reports the incorrect File_A inode state. Explanation for the incorrect inode state is that inodes are not immediately synced on file create for performance reasons. This leaves the on-disk inode buffer uninitialized (or with old state from a previous generation inode) and this is what xfs_bulkstat() would report. Solutions: One solution provided by the attached patch is to mark the on-disk inode buffer "dirty" on unlink. When the inode is reclaimed (by a new file create), xfs_bulkstat() would filter this inode by the "dirty" mark. Once the inode is flushed to disk, the on-disk buffer "dirty" mark is automatically removed and a following xfs_bulkstat() would return the correct inode state. A better solution would be if the inode is immediately synced at create. This would make the on-disk inode buffer up to date and xfs_bulkstat() should return the correct inode state. Disadvantages of the above solutions: The first solution marks the inode "dirty" on unlink by setting the on-disk di_nlink field to 0. Note that the in-core di_nlink has already been set to 0 and a corresponding transaction logged by xfs_droplink(). This is an exception from the rule that any on-disk inode buffer changes has to be followed by a disk write (inode flush). Synchronizing the in-core to on-disk di_nlink values in advance (before the actual inode flush to disk) should be fine in this case because the inode is already unlinked and it would never change its di_nlink again for this inode generation. The second solution would be a performance hit as it would require disk write for each new file create to flush the inode to disk. Dave suggested modifying the inode sync code to allow on-disk buffer updates without disk writes. This doesn't seem to be very simple and would require some time for a proper implementation and testing. I have been assigned to do it in the near future. In the mean time we have XFS users that urgently need a solution and the patch bellow seems to fix the problem for them. Regards, Vlad