]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
os/bluefs: only flush dirty devices when do _fsync. 22110/head
authorJianpeng Ma <jianpeng.ma@intel.com>
Mon, 21 May 2018 14:46:12 +0000 (22:46 +0800)
committerJianpeng Ma <jianpeng.ma@intel.com>
Tue, 22 May 2018 08:46:55 +0000 (16:46 +0800)
commit8c6e4d3d38664d1aab82bb973b1581a7c706343e
tree32145b1386460071725adb26d4ee1f5112b45593
parent1642bc44919274ab7e21af3a6534b80e11d2b4ad
os/bluefs: only flush dirty devices when do _fsync.

Now _fsync call flush_bdev make data safely. But flush_bdev flush all
devices which don't care whether has data for this sync.
So add new api flush_bdev(std::array<bool, MAX_BDEV>& dirty_bdevs)
which only flush dirty devices for this sync op.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
src/os/bluestore/BlueFS.cc
src/os/bluestore/BlueFS.h