From: myoungwon oh Date: Wed, 24 May 2017 01:17:19 +0000 (+0900) Subject: osd: add the RWORDERED flag when the client need it X-Git-Tag: v12.1.0~57^2~9^2~2^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5e9b4323985c321de593416b343ef9032d7660f1;p=ceph.git osd: add the RWORDERED flag when the client need it Signed-off-by: Myoungwon Oh omwmw@sk.com Signed-off-by: Sage Weil sage@redhat.com --- diff --git a/src/osd/PrimaryLogPG.cc b/src/osd/PrimaryLogPG.cc index 9a5adfb572d6..e41e105d3ef7 100644 --- a/src/osd/PrimaryLogPG.cc +++ b/src/osd/PrimaryLogPG.cc @@ -2887,6 +2887,9 @@ void PrimaryLogPG::do_proxy_write(OpRequestRef op, const hobject_t& missing_oid, } unsigned flags = CEPH_OSD_FLAG_IGNORE_CACHE | CEPH_OSD_FLAG_IGNORE_OVERLAY; + if (!(op->may_write() || op->may_cache())) { + flags |= CEPH_OSD_FLAG_RWORDERED; + } dout(10) << __func__ << " Start proxy write for " << *m << dendl; ProxyWriteOpRef pwop(std::make_shared(op, soid, m->ops, m->get_reqid()));