From 5341c8c9dea7b58de4651a3117f630787de11806 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 27 May 2008 11:09:07 -0700 Subject: [PATCH] mds: remove old predirty_dn_dir code --- src/mds/Server.cc | 63 ----------------------------------------------- src/mds/Server.h | 3 --- 2 files changed, 66 deletions(-) diff --git a/src/mds/Server.cc b/src/mds/Server.cc index 3507b2e47c80a..3f03578cf401c 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -1478,69 +1478,6 @@ CDir* Server::try_open_auth_dirfrag(CInode *diri, frag_t fg, MDRequest *mdr) } - -/** predirty_dn_diri - * predirty the directory inode for a new dentry, if it is auth (and not root) - * BUG: root inode doesn't get dirtied properly, currently. blech. - */ -version_t Server::predirty_dn_diri(MDRequest *mdr, CDentry *dn, EMetaBlob *blob, int deltasize) -{ - version_t dirpv = 0; - CInode *diri = dn->dir->inode; - - if (diri->is_base()) return 0; - - if (diri->is_auth()) { - assert(mdr->wrlocks.count(&diri->dirlock)); - - dirpv = diri->pre_dirty(); - dout(10) << "predirty_dn_diri ctime/mtime " << mdr->now << " pv " << dirpv << " on " << *diri << dendl; - - // predirty+journal - inode_t *pi = diri->project_inode(); - if (dirpv) pi->version = dirpv; - pi->ctime = pi->mtime = mdr->now; - pi->size += deltasize; - blob->add_dir_context(diri->get_parent_dn()->get_dir()); - blob->add_primary_dentry(diri->get_parent_dn(), true, 0, pi); - } else { - // journal the mtime change anyway. - inode_t *ji = blob->add_primary_dentry(diri->get_parent_dn(), true); - ji->ctime = ji->mtime = mdr->now; - - dout(10) << "predirty_dn_diri (non-auth) ctime/mtime " << mdr->now << " on " << *diri << dendl; - - //blob->add_dirtied_inode_mtime(diri->ino(), mdr->now); - assert(mdr->ls); - mdr->ls->dirty_dirfrag_dir.push_back(&diri->xlist_dirty_dirfrag_dir); - } - - return dirpv; -} - -/** dirty_dn_diri - * follow-up with actual dirty of inode after journal entry commits. - */ -void Server::dirty_dn_diri(MDRequest *mdr, CDentry *dn, version_t dirpv) -{ - CInode *diri = dn->dir->inode; - - if (diri->is_root()) return; - - if (dirpv) { - // we journaled and predirtied. - assert(diri->is_auth() && !diri->is_root()); - diri->pop_and_dirty_projected_inode(mdr->ls); - dout(10) << "dirty_dn_diri ctime/mtime " << mdr->now << " v " << diri->inode.version << " on " << *diri << dendl; - } else { - // dirlock scatterlock will propagate the update. - diri->inode.ctime = diri->inode.mtime = mdr->now; - diri->dirlock.set_updated(); - dout(10) << "dirty_dn_diri (non-dirty) ctime/mtime " << mdr->now << " on " << *diri << dendl; - } -} - - // =============================================================================== // STAT diff --git a/src/mds/Server.h b/src/mds/Server.h index 01ebc3b941226..51497a81a762f 100644 --- a/src/mds/Server.h +++ b/src/mds/Server.h @@ -101,9 +101,6 @@ public: CDir* try_open_auth_dirfrag(CInode *diri, frag_t fg, MDRequest *mdr); - version_t predirty_dn_diri(MDRequest *mdr, CDentry *dn, class EMetaBlob *blob, int deltasize=0); - void dirty_dn_diri(MDRequest *mdr, CDentry *dn, version_t dirpv); - // requests on existing inodes. void handle_client_stat(MDRequest *mdr); -- 2.39.5