Mystery solved? files not written for days...

Eric Sandeen sandeen at sandeen.net
Mon Mar 30 17:01:04 CDT 2009


On LKML:

[PATCH] writeback: guard against jiffies wraparound on
inode->dirtied_when checks

When a file is continually dirtied, the check in sync_sb_inodes:

        /* Was this inode dirtied after sync_sb_inodes was called? */
        if (time_after(inode->dirtied_when, start))
                break;

may have large windows where this trips on the first
(continually-dirtied) inode on the list when the time_after check has
wrapped, causing the nothing to be written out for that superblock,
potentially for days.

Could this be the reason for those various "hey, my file disappeared
after a crash and I hadn't written to it for *days*" reports we got now
and then, leaving us all scratching our heads?

-Eric




More information about the xfs mailing list