]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
bluestore: print aio in batch
authorSage Weil <sage@redhat.com>
Wed, 10 Jul 2019 15:21:12 +0000 (10:21 -0500)
committerSage Weil <sage@redhat.com>
Wed, 10 Jul 2019 15:21:12 +0000 (10:21 -0500)
commit3a52716cc9465a600f7e0e093dc33862615eb90e
tree484336013b71e7888de9ab2635549eb031d4db97
parent89aa41a47ec8b4658574a84a5b2e2331acd5596d
bluestore: print aio in batch

KernelDevice::aio_{submit,write,read}() are critical paths. calling
cct->_conf->subsys.should_gather() multi-times is not optimal. the
downside of this issue is that if the aio is printed, the size of
buffer in PrebufferedStreambuf could be large if the number of iov is
large, that could be a heavy load to the memory subsystem.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 67c6f768add46d92d9403ca6b7709b892d8a686d)

# Conflicts:
# src/os/bluestore/aio.cc
 - adjacent to aio_queue_t::submit()
src/os/bluestore/KernelDevice.cc
src/os/bluestore/aio.cc
src/os/bluestore/aio.h