From: Sage Weil Date: Thu, 26 May 2016 14:02:44 +0000 (-0400) Subject: os/bluestore: avoid unnecessary write_onode calls X-Git-Tag: v11.0.0~359^2~19 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=3d49c2eb57ae39d752175635a0d8f4843ffa303b;p=ceph.git os/bluestore: avoid unnecessary write_onode calls _wctx_finish callers always write the onode; we only need to worry about our changes to the bnode. Signed-off-by: Sage Weil --- diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index 587f9a723a5b..fac223a7829f 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -5666,9 +5666,7 @@ void BlueStore::_wctx_finish( } else { dout(20) << __func__ << " keep blob " << *b << dendl; } - if (l.blob >= 0) { - txc->write_onode(o); - } else { + if (l.blob < 0) { txc->write_bnode(o->bnode); } } @@ -5771,6 +5769,7 @@ int BlueStore::_do_write( } _wctx_finish(txc, c, o, &wctx); + txc->write_onode(o); if (end > o->onode.size) { dout(20) << __func__ << " extending size to 0x" << std::hex << end