Btrfs: fix a bug in parsing return value in logical resolve
authorLiu Bo <liub.liubo@gmail.com>
Sat, 8 Sep 2012 02:01:28 +0000 (20:01 -0600)
committerChris Mason <chris.mason@fusionio.com>
Mon, 1 Oct 2012 19:19:18 +0000 (15:19 -0400)
commit69917e431210f8712fe050f47b7561e7dae89521
tree52a81d3c70d3a768d2d7756984dd16898ce12e50
parentdea7d76ecbfb53cda6aadd9bed33e87d255c5b02
Btrfs: fix a bug in parsing return value in logical resolve

In logical resolve, we parse extent_from_logical()'s 'ret' as a kind of flag.

It is possible to lose our errors because
(-EXXXX & BTRFS_EXTENT_FLAG_TREE_BLOCK) is true.

I'm not sure if it is on purpose, it just looks too hacky if it is.
I'd rather use a real flag and a 'ret' to catch errors.

Acked-by: Jan Schmidt <list.btrfs@jan-o-sch.net>
Signed-off-by: Liu Bo <liub.liubo@gmail.com>
fs/btrfs/backref.c
fs/btrfs/backref.h
fs/btrfs/ioctl.c
fs/btrfs/scrub.c
fs/btrfs/send.c