]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: allow splitting of hole em's when dropping extent cache
authorJosef Bacik <jbacik@fusionio.com>
Thu, 11 Jul 2013 14:34:59 +0000 (10:34 -0400)
committerChris Mason <chris.mason@fusionio.com>
Fri, 9 Aug 2013 23:30:09 +0000 (19:30 -0400)
commit727e84bea3b58a0e733aba581724b87678dd8812
tree7a4b93b7c6b3603795a36464944d8c479806e41c
parent7f9b872e9bd9d13f53773357a2ce085ca8885472
Btrfs: allow splitting of hole em's when dropping extent cache

I noticed while running multi-threaded fsync tests that sometimes fsck would
complain about an improper gap.  This happens because we fail to add a hole
extent to the file, which was happening when we'd split a hole EM because
btrfs_drop_extent_cache was just discarding the whole em instead of splitting
it.  So this patch fixes this by allowing us to split a hole em properly, which
means that added holes actually get logged properly and we no longer see this
fsck error.  Thankfully we're tolerant of these sort of problems so a user would
not see any adverse effects of this bug, other than fsck complaining.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/file.c