X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fsrc%2Fclient%2FDentry.h;fp=src%2Fceph%2Fsrc%2Fclient%2FDentry.h;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=c2181956cbcd55b5504407d24021612b61380d77;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/src/client/Dentry.h b/src/ceph/src/client/Dentry.h deleted file mode 100644 index c218195..0000000 --- a/src/ceph/src/client/Dentry.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef CEPH_CLIENT_DENTRY_H -#define CEPH_CLIENT_DENTRY_H - -#include "include/lru.h" -#include "include/xlist.h" - -#include "mds/mdstypes.h" -#include "InodeRef.h" - -class Dir; -struct Inode; - -class Dentry : public LRUObject { - public: - string name; // sort of lame - //const char *name; - Dir *dir; - InodeRef inode; - int ref; // 1 if there's a dir beneath me. - int64_t offset; - mds_rank_t lease_mds; - utime_t lease_ttl; - uint64_t lease_gen; - ceph_seq_t lease_seq; - int cap_shared_gen; - - /* - * ref==1 -> cached, unused - * ref >1 -> pinned in lru - */ - void get() { - assert(ref > 0); - if (++ref == 2) - lru_pin(); - //cout << "dentry.get on " << this << " " << name << " now " << ref << std::endl; - } - void put() { - assert(ref > 0); - if (--ref == 1) - lru_unpin(); - //cout << "dentry.put on " << this << " " << name << " now " << ref << std::endl; - if (ref == 0) - delete this; - } - - void dump(Formatter *f) const; - - Dentry() : - dir(0), ref(1), offset(0), - lease_mds(-1), lease_gen(0), lease_seq(0), cap_shared_gen(0) - { } -private: - ~Dentry() { - assert(ref == 0); - } -}; - - - - - -#endif