OpenCloudOS-Kernel/drivers/md/persistent-data
Joe Thornber f722063ee0 dm space map: optimise sm_ll_dec and sm_ll_inc
Prior to this patch these methods did a lookup followed by an insert.
Instead they now call a common mutate function that adjusts the value
according to a callback function.  This avoids traversing the data
structures twice and hence improves performance.

Also factor out sm_ll_lookup_big_ref_count() for use by both
sm_ll_lookup() and sm_ll_mutate().

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
2013-08-23 09:02:14 -04:00
..
Kconfig dm persistent data: remove CONFIG_EXPERIMENTAL 2013-03-01 22:45:46 +00:00
Makefile dm persistent data: add bitset 2013-03-01 22:45:51 +00:00
dm-array.c dm persistent data: add transactional array 2013-03-01 22:45:51 +00:00
dm-array.h dm persistent data: add transactional array 2013-03-01 22:45:51 +00:00
dm-bitset.c dm persistent data: add bitset 2013-03-01 22:45:51 +00:00
dm-bitset.h dm persistent data: add bitset 2013-03-01 22:45:51 +00:00
dm-block-manager.c dm btree: prefetch child nodes when walking tree for a dm_btree_del 2013-08-23 09:02:14 -04:00
dm-block-manager.h dm btree: prefetch child nodes when walking tree for a dm_btree_del 2013-08-23 09:02:14 -04:00
dm-btree-internal.h dm persistent data: add btree_walk 2013-03-01 22:45:50 +00:00
dm-btree-remove.c dm thin: fix discard corruption 2013-03-20 17:21:24 +00:00
dm-btree-spine.c dm persistent data: add btree_walk 2013-03-01 22:45:50 +00:00
dm-btree.c dm btree: prefetch child nodes when walking tree for a dm_btree_del 2013-08-23 09:02:14 -04:00
dm-btree.h dm persistent data: add btree_walk 2013-03-01 22:45:50 +00: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: optimise sm_ll_dec and sm_ll_inc 2013-08-23 09:02:14 -04: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 persistent data: add threshold callback to space map 2013-05-10 14:37:20 +01: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 persistent metadata: add space map threshold callback 2013-05-10 14:37:20 +01:00
dm-space-map-metadata.h dm: add persistent data library 2011-10-31 20:19:11 +00: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 hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
dm-transaction-manager.h dm persistent data: tidy transaction manager creation fns 2012-07-27 15:08:09 +01:00