From: Sage Weil Date: Wed, 15 Sep 2021 23:06:11 +0000 (-0400) Subject: osdc/Objecter: return EIO for new linger ops X-Git-Tag: v17.1.0~797^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=14367571fc026ca926f8fb85e012ae071946b386;p=ceph-ci.git osdc/Objecter: return EIO for new linger ops Signed-off-by: Sage Weil --- diff --git a/src/osdc/Objecter.cc b/src/osdc/Objecter.cc index a9f87b5bdff..e158ce9d495 100644 --- a/src/osdc/Objecter.cc +++ b/src/osdc/Objecter.cc @@ -871,10 +871,15 @@ void Objecter::_linger_submit(LingerOp *info, // Populate Op::target OSDSession *s = NULL; - _calc_target(&info->target, nullptr); + int r = _calc_target(&info->target, nullptr); + switch (r) { + case RECALC_OP_TARGET_POOL_EIO: + _check_linger_pool_eio(info); + return; + } // Create LingerOp<->OSDSession relation - int r = _get_session(info->target.osd, &s, sul); + r = _get_session(info->target.osd, &s, sul); ceph_assert(r == 0); unique_lock sl(s->lock); _session_linger_op_assign(s, info);