]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/osd/osd_operations/client_request: return OpInfo errors
authorMatan Breizman <mbreizma@redhat.com>
Sun, 14 Jan 2024 12:33:52 +0000 (12:33 +0000)
committerMatan Breizman <mbreizma@redhat.com>
Tue, 16 Jan 2024 12:46:28 +0000 (12:46 +0000)
See NeoRadosCls.DNE or LibRadosCls.DNE

Fixes: https://tracker.ceph.com/issues/64000
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
src/crimson/osd/osd_operations/client_request.cc
src/crimson/osd/pg.cc

index 120b92ae0949bd466125635d68352cde7350a990..0936889e37e3054f3b6db6b8037cdaf970bd4095 100644 (file)
@@ -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,
index f20ea15d66f564a9c766981ef8718002883e9d4f..48544ea2566a879a84d56715ada8f321e7a8bc65 100644 (file)
@@ -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()) {