From 98f3c19104720ff2ab929c0891bd33e2634c87bc Mon Sep 17 00:00:00 2001 From: Matan Breizman Date: Sun, 14 Jan 2024 12:33:52 +0000 Subject: [PATCH] crimson/osd/osd_operations/client_request: return OpInfo errors See NeoRadosCls.DNE or LibRadosCls.DNE Fixes: https://tracker.ceph.com/issues/64000 Signed-off-by: Matan Breizman --- src/crimson/osd/osd_operations/client_request.cc | 5 ++++- src/crimson/osd/pg.cc | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/crimson/osd/osd_operations/client_request.cc b/src/crimson/osd/osd_operations/client_request.cc index 120b92ae094..0936889e37e 100644 --- a/src/crimson/osd/osd_operations/client_request.cc +++ b/src/crimson/osd/osd_operations/client_request.cc @@ -249,7 +249,10 @@ ClientRequest::process_op( -> PG::load_obc_iertr::future<> { DEBUGDPP("{}.{}: entered get_obc stage, about to wait_scrub", *pg, *this, this_instance_id); - op_info.set_from_op(&*m, *pg->get_osdmap()); + if (int res = op_info.set_from_op(&*m, *pg->get_osdmap()); + res != 0) { + return reply_op_error(pg, res); + } return ihref.enter_blocker( *this, pg->scrubber, diff --git a/src/crimson/osd/pg.cc b/src/crimson/osd/pg.cc index f20ea15d66f..48544ea2566 100644 --- a/src/crimson/osd/pg.cc +++ b/src/crimson/osd/pg.cc @@ -1217,7 +1217,7 @@ hobject_t PG::get_oid(const hobject_t& hobj) RWState::State PG::get_lock_type(const OpInfo &op_info) { - + ceph_assert(op_info.get_flags()); if (op_info.rwordered() && op_info.may_read()) { return RWState::RWEXCL; } else if (op_info.rwordered()) { -- 2.39.5