android_kernel_google_msm/drivers/md/persistent-data
Joe Thornber d8e33a2789 dm btree: fix bufio buffer leaks in dm_btree_del() error path
commit ed8b45a3679eb49069b094c0711b30833f27c734 upstream.

If dm_btree_del()'s call to push_frame() fails, e.g. due to
btree_node_validator finding invalid metadata, the dm_btree_del() error
path must unlock all frames (which have active dm-bufio buffers) that
were pushed onto the del_stack.

Otherwise, dm_bufio_client_destroy() will BUG_ON() because dm-bufio
buffers have leaked, e.g.:
  device-mapper: bufio: leaked buffer 3, hold count 1, list 0

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Zefan Li <lizefan@huawei.com>
2016-10-26 23:15:36 +08:00
..
dm-block-manager.c
dm-block-manager.h
dm-btree-internal.h dm btree: add ref counting ops for the leaves of top level btrees 2016-03-21 09:17:52 +08:00
dm-btree-remove.c dm btree remove: fix a bug when rebalancing nodes after removal 2016-03-21 09:17:58 +08:00
dm-btree-spine.c dm btree: add ref counting ops for the leaves of top level btrees 2016-03-21 09:17:52 +08:00
dm-btree.c dm btree: fix bufio buffer leaks in dm_btree_del() error path 2016-10-26 23:15:36 +08:00
dm-btree.h
dm-persistent-data-internal.h
dm-space-map-checker.c
dm-space-map-checker.h
dm-space-map-common.c
dm-space-map-common.h
dm-space-map-disk.c
dm-space-map-disk.h
dm-space-map-metadata.c
dm-space-map-metadata.h
dm-space-map.h
dm-transaction-manager.c
dm-transaction-manager.h
Kconfig
Makefile