dm btree: fix leak of bufio-backed block in btree_split_sibling error path
authorMike Snitzer <snitzer@redhat.com>
Mon, 23 Nov 2015 21:24:45 +0000 (16:24 -0500)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 30 Dec 2015 02:25:59 +0000 (02:25 +0000)
commitb777326182726e55759f48ae39af5b33eec3b292
tree2190924f00c89f2ba902d7d3648dc446c7965520
parent9b0a13329f4b3c87cc8603c8cacd4e21c484cd07
dm btree: fix leak of bufio-backed block in btree_split_sibling error path

commit 30ce6e1cc5a0f781d60227e9096c86e188d2c2bd upstream.

The block allocated at the start of btree_split_sibling() is never
released if later insert_at() fails.

Fix this by releasing the previously allocated bufio block using
unlock_block().

Reported-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/md/persistent-data/dm-btree.c