CernVM-FS
2.12.0
|
#include <glue_buffer.h>
Classes | |
struct | Cursor |
struct | Statistics |
class | VfsPutRaii |
Public Member Functions | |
Statistics | GetStatistics () |
InodeTracker () | |
InodeTracker (const InodeTracker &other) | |
InodeTracker & | operator= (const InodeTracker &other) |
~InodeTracker () | |
void | VfsGetBy (const InodeEx inode_ex, const uint32_t by, const PathString &path) |
void | VfsGet (const InodeEx inode_ex, const PathString &path) |
VfsPutRaii | GetVfsPutRaii () |
bool | FindPath (InodeEx *inode_ex, PathString *path) |
uint64_t | FindInode (const PathString &path) |
bool | FindDentry (uint64_t ino, uint64_t *parent_ino, NameString *name) |
bool | ReplaceInode (uint64_t old_inode, const InodeEx &new_inode) |
Cursor | BeginEnumerate () |
bool | NextEntry (Cursor *cursor, uint64_t *inode_parent, NameString *name) |
bool | NextInode (Cursor *cursor, uint64_t *inode) |
void | EndEnumerate (Cursor *cursor) |
Private Member Functions | |
void | InitLock () |
void | CopyFrom (const InodeTracker &other) |
void | Lock () const |
void | Unlock () const |
Private Attributes | |
unsigned | version_ |
pthread_mutex_t * | lock_ |
PathMap | path_map_ |
InodeExMap | inode_ex_map_ |
InodeReferences | inode_references_ |
Statistics | statistics_ |
Static Private Attributes | |
static const unsigned | kVersion = 4 |
Tracks inode reference counters as given by Fuse.
Definition at line 593 of file glue_buffer.h.
glue::InodeTracker::InodeTracker | ( | ) |
Definition at line 83 of file glue_buffer.cc.
|
explicit |
Definition at line 89 of file glue_buffer.cc.
glue::InodeTracker::~InodeTracker | ( | ) |
Definition at line 104 of file glue_buffer.cc.
Referenced by RestoreState().
|
inline |
Definition at line 763 of file glue_buffer.h.
Referenced by FuseInvalidator::MainInvalidator(), and TalkManager::MainResponder().
|
private |
|
inline |
Definition at line 788 of file glue_buffer.h.
Referenced by FuseInvalidator::MainInvalidator(), and TalkManager::MainResponder().
|
inline |
Definition at line 726 of file glue_buffer.h.
Referenced by cvmfs::cvmfs_getattr().
|
inline |
Definition at line 718 of file glue_buffer.h.
Referenced by cvmfs::GetDirentForPath().
|
inline |
Definition at line 700 of file glue_buffer.h.
Referenced by cvmfs::GetDirentForInode(), and cvmfs::GetPathForInode().
|
inline |
Definition at line 673 of file glue_buffer.h.
Referenced by TalkManager::MainResponder().
|
inline |
Definition at line 698 of file glue_buffer.h.
Referenced by cvmfs::cvmfs_forget().
|
private |
|
inlineprivate |
Definition at line 797 of file glue_buffer.h.
Referenced by BeginEnumerate(), FindDentry(), FindInode(), FindPath(), ReplaceInode(), VfsGetBy(), and glue::InodeTracker::VfsPutRaii::VfsPutRaii().
|
inline |
Definition at line 769 of file glue_buffer.h.
Referenced by TalkManager::MainResponder().
|
inline |
Definition at line 784 of file glue_buffer.h.
Referenced by FuseInvalidator::MainInvalidator(), and TalkManager::MainResponder().
InodeTracker & glue::InodeTracker::operator= | ( | const InodeTracker & | other | ) |
Definition at line 95 of file glue_buffer.cc.
|
inline |
The new inode has reference counter 0. Returns true if the inode was found and replaced
Definition at line 748 of file glue_buffer.h.
Referenced by cvmfs::cvmfs_lookup().
|
inlineprivate |
Definition at line 801 of file glue_buffer.h.
Referenced by EndEnumerate(), FindDentry(), FindInode(), FindPath(), ReplaceInode(), VfsGetBy(), and glue::InodeTracker::VfsPutRaii::~VfsPutRaii().
|
inline |
Definition at line 694 of file glue_buffer.h.
Referenced by cvmfs::cvmfs_lookup().
|
inline |
Definition at line 680 of file glue_buffer.h.
Referenced by compat::inode_tracker::Migrate(), compat::inode_tracker_v2::Migrate(), compat::inode_tracker_v3::Migrate(), and VfsGet().
|
private |
Definition at line 809 of file glue_buffer.h.
Referenced by CopyFrom(), FindDentry(), FindPath(), ReplaceInode(), VfsGetBy(), and glue::InodeTracker::VfsPutRaii::VfsPut().
|
private |
Definition at line 810 of file glue_buffer.h.
Referenced by BeginEnumerate(), CopyFrom(), NextInode(), ReplaceInode(), VfsGetBy(), and glue::InodeTracker::VfsPutRaii::VfsPut().
|
staticprivate |
Definition at line 793 of file glue_buffer.h.
|
private |
Definition at line 807 of file glue_buffer.h.
|
private |
Definition at line 808 of file glue_buffer.h.
Referenced by BeginEnumerate(), CopyFrom(), FindDentry(), FindInode(), FindPath(), NextEntry(), ReplaceInode(), VfsGetBy(), and glue::InodeTracker::VfsPutRaii::VfsPut().
|
private |
Definition at line 811 of file glue_buffer.h.
Referenced by CopyFrom(), FindInode(), FindPath(), GetStatistics(), VfsGetBy(), and glue::InodeTracker::VfsPutRaii::VfsPut().
|
private |
Definition at line 806 of file glue_buffer.h.
Referenced by CopyFrom().