]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osdc/Journaler: make try_read_entry store data in contiguous memory 25520/head
authorYan, Zheng <zyan@redhat.com>
Tue, 27 Nov 2018 08:15:21 +0000 (16:15 +0800)
committerNathan Cutler <ncutler@suse.com>
Wed, 12 Dec 2018 21:24:53 +0000 (22:24 +0100)
commit6faa2391976c1ba0cbe0f36482f80094c86148a6
tree601c08fe68bcb83986e08f7aad9d2dbc0d555dd0
parent7423dbc6b8e0eb789d0ce3398351374b93d2f4cc
osdc/Journaler: make try_read_entry store data in contiguous memory

If bufferlist consists of discontiguous memory, decoding types whose
denc_traits needs contiguous memory is inefficient. The bufferlist may
get copied to temporary memory multiple times. (copy_shallow() in
src/include/denc.h actually does deep copy)

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
Fixes: http://tracker.ceph.com/issues/37399
(cherry picked from commit 39d044be3c8c29941443afd7daaf61603efec2c9)
src/osdc/Journaler.cc