]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
librbd: try to preserve object map for diff-iterate in fast-diff mode
authorIlya Dryomov <idryomov@gmail.com>
Sat, 6 Jan 2024 16:08:04 +0000 (17:08 +0100)
committerIlya Dryomov <idryomov@gmail.com>
Fri, 2 Feb 2024 14:36:57 +0000 (15:36 +0100)
commitddd8ae7be42e95168a5aaef117ef5fb208540303
tree6a5c19e2d3e6315ac1d42a04ef2b1d66e663738d
parentbbd75c7f15f47ade184028799f615f69204fad77
librbd: try to preserve object map for diff-iterate in fast-diff mode

As an optimization, try to ensure that the object map for the end
version is preloaded through the acquisition of exclusive lock and
as a consequence remains around until exclusive lock is released.
If it's not around, DiffRequest would (re)load it on each call.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit 89b0d9e7b40a5f962094428e613315d3697d261f)
src/librbd/ImageCtx.h
src/librbd/api/DiffIterate.cc
src/test/librbd/test_librbd.cc