OpenCloudOS-Kernel/drivers/md/persistent-data
Joe Thornber 6096d91af0 dm space map metadata: fix occasional leak of a metadata block on resize
The metadata space map has a simplified 'bootstrap' mode that is
operational when extending the space maps.  Whilst in this mode it's
possible for some refcount decrement operations to become queued (eg, as
a result of shadowing one of the bitmap indexes).  These decrements were
not being applied when switching out of bootstrap mode.

The effect of this bug was the leaking of a 4k metadata block.  This is
detected by the latest version of thin_check as a non fatal error.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Cc: stable@vger.kernel.org
2015-06-17 10:09:23 -04:00
..
Kconfig kconfig: use bool instead of boolean for type definition attributes 2015-01-07 13:08:04 +01:00
Makefile dm persistent data: add bitset 2013-03-01 22:45:51 +00:00
dm-array.c dm array: if resizing the array is a noop set the new root to the old one 2014-12-01 11:30:07 -05:00
dm-array.h dm persistent data: add transactional array 2013-03-01 22:45:51 +00:00
dm-bitset.c dm bitset: only flush the current word if it has been dirtied 2014-03-27 16:56:23 -04:00
dm-bitset.h dm bitset: only flush the current word if it has been dirtied 2014-03-27 16:56:23 -04:00
dm-block-manager.c dm thin metadata: remove in-core 'read_only' flag 2015-05-29 14:18:59 -04:00
dm-block-manager.h dm thin metadata: remove in-core 'read_only' flag 2015-05-29 14:18:59 -04:00
dm-btree-internal.h dm btree: fix a recursion depth bug in btree walking code 2014-11-10 15:23:58 -05:00
dm-btree-remove.c dm btree: add dm_btree_remove_leaves() 2015-06-11 17:13:03 -04:00
dm-btree-spine.c dm btree: fix a recursion depth bug in btree walking code 2014-11-10 15:23:58 -05:00
dm-btree.c dm btree: fix a recursion depth bug in btree walking code 2014-11-10 15:23:58 -05:00
dm-btree.h dm btree: add dm_btree_remove_leaves() 2015-06-11 17:13:03 -04:00
dm-persistent-data-internal.h dm: add persistent data library 2011-10-31 20:19:11 +00:00
dm-space-map-common.c dm space map common: make sure new space is used during extend 2014-01-07 21:05:17 -05:00
dm-space-map-common.h dm persistent data: only commit space map if index changed 2012-07-27 15:08:06 +01:00
dm-space-map-disk.c dm space map disk: fix sm_disk_count_is_more_than_one() 2015-02-13 19:32:58 -05:00
dm-space-map-disk.h dm: add persistent data library 2011-10-31 20:19:11 +00:00
dm-space-map-metadata.c dm space map metadata: fix occasional leak of a metadata block on resize 2015-06-17 10:09:23 -04:00
dm-space-map-metadata.h dm thin: allow metadata space larger than supported to go unused 2014-02-27 11:49:08 -05:00
dm-space-map.h dm persistent data: add threshold callback to space map 2013-05-10 14:37:20 +01:00
dm-transaction-manager.c dm transaction manager: add support for prefetching blocks of metadata 2014-11-10 15:25:26 -05:00
dm-transaction-manager.h dm transaction manager: add support for prefetching blocks of metadata 2014-11-10 15:25:26 -05:00