From: Greg Farnum Date: Wed, 12 Mar 2014 03:11:21 +0000 (-0700) Subject: Mutation: rename to MutationImpl and define MutationRef X-Git-Tag: v0.80-rc1~84^2~15 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=3be138f51f31ee17d8d773f81c3207b775334d7d;p=ceph.git Mutation: rename to MutationImpl and define MutationRef Signed-off-by: Greg Farnum --- diff --git a/src/mds/Mutation.cc b/src/mds/Mutation.cc index 87ffc3ea5540..2026d97c5e20 100644 --- a/src/mds/Mutation.cc +++ b/src/mds/Mutation.cc @@ -20,9 +20,9 @@ #include "messages/MMDSSlaveRequest.h" -// Mutation +// MutationImpl -void Mutation::pin(MDSCacheObject *o) +void MutationImpl::pin(MDSCacheObject *o) { if (pins.count(o) == 0) { o->get(MDSCacheObject::PIN_REQUEST); @@ -30,14 +30,14 @@ void Mutation::pin(MDSCacheObject *o) } } -void Mutation::unpin(MDSCacheObject *o) +void MutationImpl::unpin(MDSCacheObject *o) { assert(pins.count(o)); o->put(MDSCacheObject::PIN_REQUEST); pins.erase(o); } -void Mutation::set_stickydirs(CInode *in) +void MutationImpl::set_stickydirs(CInode *in) { if (stickydirs.count(in) == 0) { in->get_stickydirs(); @@ -45,7 +45,7 @@ void Mutation::set_stickydirs(CInode *in) } } -void Mutation::drop_pins() +void MutationImpl::drop_pins() { for (set::iterator it = pins.begin(); it != pins.end(); @@ -54,7 +54,7 @@ void Mutation::drop_pins() pins.clear(); } -void Mutation::start_locking(SimpleLock *lock, int target) +void MutationImpl::start_locking(SimpleLock *lock, int target) { assert(locking == NULL); pin(lock->get_parent()); @@ -62,7 +62,7 @@ void Mutation::start_locking(SimpleLock *lock, int target) locking_target_mds = target; } -void Mutation::finish_locking(SimpleLock *lock) +void MutationImpl::finish_locking(SimpleLock *lock) { assert(locking == lock); locking = NULL; @@ -71,12 +71,12 @@ void Mutation::finish_locking(SimpleLock *lock) // auth pins -bool Mutation::is_auth_pinned(MDSCacheObject *object) +bool MutationImpl::is_auth_pinned(MDSCacheObject *object) { return auth_pins.count(object) || remote_auth_pins.count(object); } -void Mutation::auth_pin(MDSCacheObject *object) +void MutationImpl::auth_pin(MDSCacheObject *object) { if (!is_auth_pinned(object)) { object->auth_pin(this); @@ -84,14 +84,14 @@ void Mutation::auth_pin(MDSCacheObject *object) } } -void Mutation::auth_unpin(MDSCacheObject *object) +void MutationImpl::auth_unpin(MDSCacheObject *object) { assert(auth_pins.count(object)); object->auth_unpin(this); auth_pins.erase(object); } -void Mutation::drop_local_auth_pins() +void MutationImpl::drop_local_auth_pins() { for (set::iterator it = auth_pins.begin(); it != auth_pins.end(); @@ -102,12 +102,12 @@ void Mutation::drop_local_auth_pins() auth_pins.clear(); } -void Mutation::add_projected_inode(CInode *in) +void MutationImpl::add_projected_inode(CInode *in) { projected_inodes.push_back(in); } -void Mutation::pop_and_dirty_projected_inodes() +void MutationImpl::pop_and_dirty_projected_inodes() { while (!projected_inodes.empty()) { CInode *in = projected_inodes.front(); @@ -116,12 +116,12 @@ void Mutation::pop_and_dirty_projected_inodes() } } -void Mutation::add_projected_fnode(CDir *dir) +void MutationImpl::add_projected_fnode(CDir *dir) { projected_fnodes.push_back(dir); } -void Mutation::pop_and_dirty_projected_fnodes() +void MutationImpl::pop_and_dirty_projected_fnodes() { while (!projected_fnodes.empty()) { CDir *dir = projected_fnodes.front(); @@ -130,24 +130,24 @@ void Mutation::pop_and_dirty_projected_fnodes() } } -void Mutation::add_updated_lock(ScatterLock *lock) +void MutationImpl::add_updated_lock(ScatterLock *lock) { updated_locks.push_back(lock); } -void Mutation::add_cow_inode(CInode *in) +void MutationImpl::add_cow_inode(CInode *in) { pin(in); dirty_cow_inodes.push_back(in); } -void Mutation::add_cow_dentry(CDentry *dn) +void MutationImpl::add_cow_dentry(CDentry *dn) { pin(dn); dirty_cow_dentries.push_back(pair(dn, dn->get_projected_version())); } -void Mutation::apply() +void MutationImpl::apply() { pop_and_dirty_projected_inodes(); pop_and_dirty_projected_fnodes(); @@ -167,7 +167,7 @@ void Mutation::apply() (*p)->mark_dirty(); } -void Mutation::cleanup() +void MutationImpl::cleanup() { drop_local_auth_pins(); drop_pins(); @@ -276,7 +276,7 @@ void MDRequestImpl::drop_local_auth_pins() { if (has_more() && more()->is_freeze_authpin) unfreeze_auth_pin(true); - Mutation::drop_local_auth_pins(); + MutationImpl::drop_local_auth_pins(); } void MDRequestImpl::print(ostream &out) diff --git a/src/mds/Mutation.h b/src/mds/Mutation.h index 0090641ca07f..0f7ce236b90f 100644 --- a/src/mds/Mutation.h +++ b/src/mds/Mutation.h @@ -33,7 +33,7 @@ class ScatterLock; class MClientRequest; class MMDSSlaveRequest; -struct Mutation { +struct MutationImpl { metareqid_t reqid; __u32 attempt; // which attempt for this request LogSegment *ls; // the log segment i'm committing to @@ -78,21 +78,21 @@ struct Mutation { list dirty_cow_inodes; list > dirty_cow_dentries; - Mutation() + MutationImpl() : attempt(0), ls(0), slave_to_mds(-1), locking(NULL), locking_target_mds(-1), done_locking(false), committing(false), aborted(false), killed(false) { } - Mutation(metareqid_t ri, __u32 att=0, int slave_to=-1) + MutationImpl(metareqid_t ri, __u32 att=0, int slave_to=-1) : reqid(ri), attempt(att), ls(0), slave_to_mds(slave_to), locking(NULL), locking_target_mds(-1), done_locking(false), committing(false), aborted(false), killed(false) { } - virtual ~Mutation() { + virtual ~MutationImpl() { assert(locking == NULL); assert(pins.empty()); assert(auth_pins.empty()); @@ -140,13 +140,13 @@ struct Mutation { } }; -inline ostream& operator<<(ostream& out, Mutation &mut) +inline ostream& operator<<(ostream& out, MutationImpl &mut) { mut.print(out); return out; } - +typedef ceph::shared_ptr MutationRef; @@ -155,7 +155,7 @@ inline ostream& operator<<(ostream& out, Mutation &mut) * mostly information about locks held, so that we can drop them all * the request is finished or forwarded. see request_*(). */ -struct MDRequestImpl : public Mutation { +struct MDRequestImpl : public MutationImpl { ceph::weak_ptr self_ref; Session *session; elist::item item_session_request; // if not on list, op is aborted. @@ -267,7 +267,7 @@ struct MDRequestImpl : public Mutation { } MDRequestImpl(metareqid_t ri, __u32 attempt, MClientRequest *req) : self_ref(), - Mutation(ri, attempt), + MutationImpl(ri, attempt), session(0), item_session_request(this), client_request(req), straydn(NULL), snapid(CEPH_NOSNAP), tracei(0), tracedn(0), alloc_ino(0), used_prealloc_ino(0), snap_caps(0), did_early_reply(false), @@ -282,7 +282,7 @@ struct MDRequestImpl : public Mutation { } MDRequestImpl(metareqid_t ri, __u32 attempt, int by) : self_ref(), - Mutation(ri, attempt, by), + MutationImpl(ri, attempt, by), session(0), item_session_request(this), client_request(0), straydn(NULL), snapid(CEPH_NOSNAP), tracei(0), tracedn(0), alloc_ino(0), used_prealloc_ino(0), snap_caps(0), did_early_reply(false),