Files
linux/fs/btrfs
Liu Bo 46d8bc3424 Btrfs: fix a bug in checking whether a inode is already in log
This is based on Josef's "Btrfs: turbo charge fsync".

The current btrfs checks if an inode is in log by comparing
root's last_log_commit to inode's last_sub_trans[2].

But the problem is that this root->last_log_commit is shared among
inodes.

Say we have N inodes to be logged, after the first inode,
root's last_log_commit is updated and the N-1 remained files will
be skipped.

This fixes the bug by keeping a local copy of root's last_log_commit
inside each inode and this local copy will be maintained itself.

[1]: we regard each log transaction as a subset of btrfs's transaction,
i.e. sub_trans

Signed-off-by: Liu Bo <bo.li.liu@oracle.com>
2012-10-01 15:19:06 -04:00
..
2012-05-30 10:23:27 -04:00
2012-05-29 23:28:33 -04:00
2008-09-25 11:04:06 -04:00
2012-10-01 15:19:03 -04:00
2012-10-01 15:19:03 -04:00
2012-06-14 21:29:16 -04:00
2011-06-17 14:54:18 -04:00
2012-10-01 15:18:53 -04:00
2012-10-01 15:18:53 -04:00