]> git.baikalelectronics.ru Git - kernel.git/commit
dm space map: optimise sm_ll_dec and sm_ll_inc
authorJoe Thornber <ejt@redhat.com>
Fri, 9 Aug 2013 12:04:56 +0000 (13:04 +0100)
committerMike Snitzer <snitzer@redhat.com>
Fri, 23 Aug 2013 13:02:14 +0000 (09:02 -0400)
commit50adcba6a4dad3f1b2a7aaabcaefe687ba228326
treeaffc57a30e5db203fac2133344e29c0dad4865e5
parentaa7f0a7ade30499c1c8ccbe27201e075c9638959
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>
drivers/md/persistent-data/dm-space-map-common.c