]> git.neil.brown.name Git - LaFS.git/commit
Revise dirty/valid rules for Index blocks.
authorNeilBrown <neilb@suse.de>
Mon, 24 Aug 2009 03:30:24 +0000 (13:30 +1000)
committerNeilBrown <neilb@suse.de>
Mon, 24 Aug 2009 03:30:24 +0000 (13:30 +1000)
commitd268a566605bf006cf33c7e149621172bf474a20
tree2fb0f8e04e89fdf1b7519cad658a33c1bbd375fc
parent1c6d952025fdcc74b083d049575615909a41e1f9
Revise dirty/valid rules for Index blocks.

An Index block is 'Valid' if it contains any index.
So an InoIdx block for a depth=0 inode is never Valid
(as there is data rather than indexes there).

When it comes time to cluster_allocate an Index block,
if it is not Valid, we simple allocated_block it to 0.

An index block is Dirty if there are any children that need incorporation
as well was when incorporate has happened but has not yet been
written.
So an Index block can be Dirty but not Valid (unlike data blocks).
block.c
cluster.c
index.c
inode.c
modify.c