]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge pull request #45852 from brucen1030/wip_optimize_excl_lock_for_librbd
authorYuri Weinstein <yweinste@redhat.com>
Fri, 19 May 2023 16:10:20 +0000 (12:10 -0400)
committerGitHub <noreply@github.com>
Fri, 19 May 2023 16:10:20 +0000 (12:10 -0400)
osd: don't require RWEXCL lock for stat+write ops

Reviewed-by: Ilya Dryomov <idryomov@redhat.com>
1  2 
src/osd/OpRequest.h
src/osd/PrimaryLogPG.cc
src/osd/osd_op_util.cc
src/osd/osd_types.h

Simple merge
Simple merge
index 54d47fecd2beab55d60ea258c5e95ff462af9abe,d400a94dbf4db1abe09cc93a39b8ee9687c0998d..97cc853e8d92295f46567ec34d688c180f07e596
@@@ -108,9 -120,17 +120,13 @@@ int OpInfo::set_from_op
        if (ceph_osd_op_mode_modify(iter->op.op))
        set_write();
      }
-     if (ceph_osd_op_mode_read(iter->op.op))
+     if (ceph_osd_op_mode_read(iter->op.op)) {
        set_read();
+       if (iter->op.op != CEPH_OSD_OP_STAT) {
+         set_read_data();
+       }
+     }
  
 -    // set READ flag if there are src_oids
 -    if (iter->soid.oid.name.length())
 -      set_read();
 -
      // set PGOP flag if there are PG ops
      if (ceph_osd_op_type_pg(iter->op.op))
        set_pg_op();
Simple merge