OPTION(bluestore_open_by_handle, OPT_BOOL, true)
OPTION(bluestore_o_direct, OPT_BOOL, true)
OPTION(bluestore_clone_cow, OPT_BOOL, true) // do copy-on-write for clones
+OPTION(bluestore_default_buffered_read, OPT_BOOL, false)
OPTION(bluestore_debug_misc, OPT_BOOL, false)
OPTION(bluestore_debug_no_reuse_blocks, OPT_BOOL, false)
OPTION(bluestore_debug_small_allocations, OPT_INT, 0)
if (op_flags & CEPH_OSD_OP_FLAG_FADVISE_WILLNEED) {
dout(20) << __func__ << " will do buffered read" << dendl;
buffered = true;
+ } else if (g_conf->bluestore_default_buffered_read &&
+ (op_flags & (CEPH_OSD_OP_FLAG_FADVISE_DONTNEED |
+ CEPH_OSD_OP_FLAG_FADVISE_NOCACHE)) == 0) {
+ dout(20) << __func__ << " defaulting to buffered read" << dendl;
+ buffered = true;
}
dout(20) << __func__ << " " << offset << "~" << length << " size "