]> 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>
Sat, 20 Jan 2024 18:00:24 +0000 (19:00 +0100)
commit399b3349488fca5bce1658cbce9dbb4df65b27c7
treeeb5a93538868e321e212a51bcefef4c3792262e6
parentf5b2af58a1ae931a8e6497e133e3b079e9ebccaa
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)

Conflicts:
src/librbd/api/DiffIterate.cc [ ImageArea support not in
  quincy ]
src/librbd/ImageCtx.h
src/librbd/api/DiffIterate.cc
src/test/librbd/test_librbd.cc