Btrfs: don't return true in releasepage unless we actually freed the eb
authorJosef Bacik <jbacik@fusionio.com>
Fri, 20 Jul 2012 20:05:36 +0000 (16:05 -0400)
committerChris Mason <chris.mason@fusionio.com>
Mon, 23 Jul 2012 20:28:08 +0000 (16:28 -0400)
commite64860aa05048fa7a8483ca698b17c2caf5625cf
tree3bee3474a00fdbef80414a926c31187865392abe
parenta98cdb85b990765dbe80a215367ae007320bfeea
Btrfs: don't return true in releasepage unless we actually freed the eb

I noticed while looking at an extent_buffer race that we will
unconditionally return 1 if we get down to release_extent_buffer after
clearing the tree ref.  However we can easily race in here and get a ref on
the eb and not actually free the eb.  So make release_extent_buffer return 1
if it free'd the eb and 0 if not so we can be a little kinder to the vm.
Thanks,

Signed-off-by: Josef Bacik <jbacik@fusionio.com>
fs/btrfs/extent_io.c