diff options
author | Joe Thornber <ejt@redhat.com> | 2015-12-02 15:24:39 +0300 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2015-12-02 21:26:49 +0300 |
commit | 993ceab91986e2e737ce9a3e23bebc8cce649240 (patch) | |
tree | 271d69ac484060b565f25614cf25a5595b036a6c /drivers/hwspinlock | |
parent | 30ce6e1cc5a0f781d60227e9096c86e188d2c2bd (diff) | |
download | linux-993ceab91986e2e737ce9a3e23bebc8cce649240.tar.xz |
dm thin metadata: fix bug in dm_thin_remove_range()
dm_btree_remove_leaves() only unmaps a contiguous region so we need a
loop, in __remove_range(), to handle ranges that contain multiple
regions.
A new btree function, dm_btree_lookup_next(), is introduced which is
more efficiently able to skip over regions of the thin device which
aren't mapped. __remove_range() uses dm_btree_lookup_next() for each
iteration of __remove_range()'s loop.
Also, improve description of dm_btree_remove_leaves().
Fixes: 6550f075 ("dm thin metadata: add dm_thin_remove_range()")
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Cc: stable@vger.kernel.org # 4.1+
Diffstat (limited to 'drivers/hwspinlock')
0 files changed, 0 insertions, 0 deletions