From: Mykola Golub Date: Fri, 2 Dec 2016 11:38:29 +0000 (+0200) Subject: rbd-mirror: set SEQUENTIAL and NOCACHE advise flags on image sync X-Git-Tag: v11.1.0~82^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F12280%2Fhead;p=ceph.git rbd-mirror: set SEQUENTIAL and NOCACHE advise flags on image sync Fixes: http://tracker.ceph.com/issues/17127 Signed-off-by: Mykola Golub --- diff --git a/src/tools/rbd_mirror/image_sync/ObjectCopyRequest.cc b/src/tools/rbd_mirror/image_sync/ObjectCopyRequest.cc index 0d1c70404976..fed48194c265 100644 --- a/src/tools/rbd_mirror/image_sync/ObjectCopyRequest.cc +++ b/src/tools/rbd_mirror/image_sync/ObjectCopyRequest.cc @@ -114,6 +114,8 @@ void ObjectCopyRequest::send_read_object() { << std::get<2>(sync_op) << dendl; op.sparse_read(std::get<1>(sync_op), std::get<2>(sync_op), &std::get<4>(sync_op), &std::get<3>(sync_op), nullptr); + op.set_op_flags2(LIBRADOS_OP_FLAG_FADVISE_SEQUENTIAL | + LIBRADOS_OP_FLAG_FADVISE_NOCACHE); break; default: break; @@ -182,6 +184,8 @@ void ObjectCopyRequest::send_write_object() { bufferlist tmpbl; tmpbl.substr_of(std::get<3>(sync_op), buffer_offset, it.second); op.write(it.first, tmpbl); + op.set_op_flags2(LIBRADOS_OP_FLAG_FADVISE_SEQUENTIAL | + LIBRADOS_OP_FLAG_FADVISE_NOCACHE); buffer_offset += it.second; dout(20) << ": write op: " << it.first<< "~" << it.second << dendl; }