]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: fix btrfs send for inline items and compression
authorChris Mason <chris.mason@fusionio.com>
Tue, 7 Aug 2012 20:25:13 +0000 (16:25 -0400)
committerChris Mason <chris.mason@fusionio.com>
Mon, 1 Oct 2012 19:19:00 +0000 (15:19 -0400)
commit82e8cbda26385f09f2e92de9ceea69a6264e8c7a
tree84c7ffead9b44d2b7d73601aed5be7a5637e804b
parent5809614dabb9f8a1006ff961af211f8c93d475c2
Btrfs: fix btrfs send for inline items and compression

The btrfs send code was assuming the offset of the file item into the
extent translated to bytes on disk.  If we're compressed, this isn't
true, and so it was off into extents owned by other files.

It was also improperly handling inline extents.  This solves a crash
where we may have gone past the end of the file extent item by not
testing early enough for an inline extent.  It also solves problems
where we have a whole between the end of the inline item and the start
of the full extent.

Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/ctree.c
fs/btrfs/extent_io.c
fs/btrfs/send.c