]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: use delayed ref sequence numbers for all fs-tree updates
authorJan Schmidt <list.btrfs@jan-o-sch.net>
Tue, 29 May 2012 15:06:54 +0000 (17:06 +0200)
committerJan Schmidt <list.btrfs@jan-o-sch.net>
Wed, 30 May 2012 16:18:21 +0000 (18:18 +0200)
commitbb7c7ba3bb653a1ec135427fd9ce088a118f4ddd
tree664ff2a92a2de3ba96be5a49ac36531d933ee5eb
parenta1f41992651da44fb5a5ca28bfcd2f5ce612b33d
Btrfs: use delayed ref sequence numbers for all fs-tree updates

The sequence number for delayed refs is needed to postpone certain delayed
refs for a very short period while walking backrefs. Before the tree
modification log, we thought we'd only have to hold back those references
that don't have a counter operation.

While now we've the tree mod log, we're rewinding fs tree blocks to a
defined consistent state. We cannot know in advance for which tree block
we'll be doing rewind operations later. Therefore, we must postpone all the
delayed refs for fs-tree blocks, even those having a counter operation.

Signed-off-by: Jan Schmidt <list.btrfs@jan-o-sch.net>
fs/btrfs/ctree.h
fs/btrfs/delayed-ref.c
fs/btrfs/delayed-ref.h