]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
Revert "multi-mds/unlink: Referent inode - reverse link mgmt"
authorVenky Shankar <vshankar@redhat.com>
Tue, 18 Mar 2025 08:57:56 +0000 (08:57 +0000)
committerVenky Shankar <vshankar@redhat.com>
Wed, 28 May 2025 04:34:27 +0000 (10:04 +0530)
This reverts commit 236a4b7b046a717e84879dcd535c0e1fefceab0d.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
(cherry picked from commit 4f78e5e1fcc8fb1d94e09aebf70fbc86c256e897)

src/mds/Server.cc

index 4f013c1c43e31466c4bbf961b91dd61a10276391..b4d16cc3b797944ed31e6a57f240597617a7c45a 100644 (file)
@@ -7917,21 +7917,11 @@ void Server::_link_remote(const MDRequestRef& mdr, bool inc, CDentry *dn, CInode
     auto req = make_message<MMDSPeerRequest>(mdr->reqid, mdr->attempt, op);
     targeti->set_object_info(req->get_object_info());
     req->op_stamp = mdr->get_op_stamp();
-    // referent inode related
-    req->referent_ino = inodeno_t(0);
     if (mds->mdsmap->allow_referent_inodes()) {
-      if (inc && newi) {
+      if (inc && newi)
         req->referent_ino = newi->ino();
-        dout(20) << __func__ << " link - referent_ino= " << req->referent_ino << " sending over wire" << dendl;
-      }
-      else { //unlink
-        if (dnl->is_referent_remote()) {
-          CInode *ref_in = dnl->get_referent_inode();
-          ceph_assert(ref_in->is_auth());
-         req->referent_ino = ref_in->ino();
-          dout(20) << __func__ << " unlink - referent_ino= " << req->referent_ino << " sending over wire" << dendl;
-        }
-      }
+    } else {
+      req->referent_ino = inodeno_t(0);
     }
 
     if (auto& desti_srnode = mdr->more()->desti_srnode)
@@ -8173,14 +8163,6 @@ void Server::handle_peer_link_prep(const MDRequestRef& mdr)
   } else {
     inc = false;
     pi.inode->nlink--;
-
-    if (referent_ino > 0) {
-      // Remove referent inode from primary inode (targeti)
-      pi.inode->remove_referent_ino(referent_ino);
-      dout(20) << __func__ <<  " referent_inodes " << std::hex << pi.inode->get_referent_inodes()
-               << " referent ino removed " << referent_ino << dendl;
-    }
-
     if (targeti->is_projected_snaprealm_global()) {
       ceph_assert(mdr->peer_request->desti_snapbl.length());
       auto p = mdr->peer_request->desti_snapbl.cbegin();