![]() |
CernVM-FS
2.10.0
|
Classes | |
struct | DirectoryListing |
class | FuseInterruptCue |
class | TransactionSink |
class | Fetcher |
struct | InodeGenerationInfo |
class | Sink |
class | Uuid |
Typedefs | |
typedef google::dense_hash_map < uint64_t, DirectoryListing, hash_murmur< uint64_t > > | DirectoryHandles |
Functions | |
static double | GetKcacheTimeout () |
void | GetReloadStatus (bool *drainout_mode, bool *maintenance_mode) |
static bool | UseWatchdog () |
std::string | PrintInodeGeneration () |
static bool | CheckVoms (const fuse_ctx &fctx) |
static bool | GetDirentForInode (const fuse_ino_t ino, catalog::DirectoryEntry *dirent) |
static bool | GetDirentForPath (const PathString &path, catalog::DirectoryEntry *dirent) |
static bool | GetPathForInode (const fuse_ino_t ino, PathString *path) |
static void | DoTraceInode (const int event, fuse_ino_t ino, const std::string &msg) |
static void | TraceInode (const int event, fuse_ino_t ino, const std::string &msg) |
static void | cvmfs_lookup (fuse_req_t req, fuse_ino_t parent, const char *name) |
static void | cvmfs_forget (fuse_req_t req, fuse_ino_t ino, uint64_t nlookup) |
static void | ReplyNegative (const catalog::DirectoryEntry &dirent, fuse_req_t req) |
static void | cvmfs_getattr (fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) |
static void | cvmfs_readlink (fuse_req_t req, fuse_ino_t ino) |
static void | AddToDirListing (const fuse_req_t req, const char *name, const struct stat *stat_info, BigVector< char > *listing) |
static void | cvmfs_opendir (fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) |
static void | cvmfs_releasedir (fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) |
static void | ReplyBufferSlice (const fuse_req_t req, const char *buffer, const size_t buffer_size, const off_t offset, const size_t max_size) |
static void | cvmfs_readdir (fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, struct fuse_file_info *fi) |
static void | FillOpenFlags (const glue::PageCacheTracker::OpenDirectives od, struct fuse_file_info *fi) |
static void | cvmfs_open (fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) |
static void | cvmfs_read (fuse_req_t req, fuse_ino_t ino, size_t size, off_t off, struct fuse_file_info *fi) |
static void | cvmfs_release (fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi) |
static void | cvmfs_statfs (fuse_req_t req, fuse_ino_t ino) |
static void | cvmfs_getxattr (fuse_req_t req, fuse_ino_t ino, const char *name, size_t size) |
static void | cvmfs_listxattr (fuse_req_t req, fuse_ino_t ino, size_t size) |
bool | Evict (const string &path) |
bool | Pin (const string &path) |
static void | cvmfs_init (void *userdata, struct fuse_conn_info *conn) |
static void | cvmfs_destroy (void *unused __attribute__((unused))) |
static void | SetCvmfsOperations (struct fuse_lowlevel_ops *cvmfs_operations) |
void | UnregisterQuotaListener () |
bool | SendFuseFd (const std::string &socket_path) |
bool | Evict (const std::string &path) |
bool | Pin (const std::string &path) |
void | TLSDestructor (void *data) |
Variables | |
FileSystem * | file_system_ = NULL |
MountPoint * | mount_point_ = NULL |
TalkManager * | talk_mgr_ = NULL |
NotificationClient * | notification_client_ = NULL |
Watchdog * | watchdog_ = NULL |
FuseRemounter * | fuse_remounter_ = NULL |
InodeGenerationInfo | inode_generation_info_ |
const loader::LoaderExports * | loader_exports_ = NULL |
OptionsManager * | options_mgr_ = NULL |
pid_t | pid_ = 0 |
quota::ListenerHandle * | watchdog_listener_ = NULL |
quota::ListenerHandle * | unpin_listener_ = NULL |
DirectoryHandles * | directory_handles_ = NULL |
pthread_mutex_t | lock_directory_handles_ = PTHREAD_MUTEX_INITIALIZER |
uint64_t | next_directory_handle_ = 0 |
unsigned | max_open_files_ |
const int | kNumReservedFd = 512 |
std::string * | repository_name_ |
bool | foreground_ |
This file is part of the CernVM File System.
typedef google::dense_hash_map<uint64_t, DirectoryListing, hash_murmur<uint64_t> > cvmfs::DirectoryHandles |
|
static |
Definition at line 666 of file cvmfs.cc.
Referenced by cvmfs_opendir().
|
static |
Definition at line 211 of file cvmfs.cc.
Referenced by cvmfs_getattr(), cvmfs_getxattr(), cvmfs_open(), and cvmfs_opendir().
|
static |
Definition at line 1639 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Definition at line 493 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Transform a cvmfs dirent into a struct stat.
Definition at line 594 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Definition at line 1398 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Do after-daemon() initialization
Definition at line 1614 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Definition at line 1481 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Find the inode number of a file name in a directory given by inode. This or getattr is called as kind of prerequisit to every operation. We do check catalog TTL here (and reload, if necessary).
Definition at line 392 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Open a file from cache. If necessary, file is downloaded first.
Definition at line 914 of file cvmfs.cc.
Referenced by cvmfs_test_cat(), libcvmfs_do_fopen(), and SetCvmfsOperations().
|
static |
Open a directory for listing.
Definition at line 693 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Redirected to pread into cache.
Definition at line 1132 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Read the directory listing.
Definition at line 873 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Reads a symlink from the catalog. Environment variables are expanded.
Definition at line 634 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
File close operation, redirected into cache.
Definition at line 1280 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Release a directory.
Definition at line 824 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Definition at line 1347 of file cvmfs.cc.
Referenced by SetCvmfsOperations().
|
static |
Definition at line 365 of file cvmfs.cc.
Referenced by TraceInode().
bool cvmfs::Evict | ( | const std::string & | path | ) |
bool cvmfs::Evict | ( | const string & | path | ) |
Definition at line 1529 of file cvmfs.cc.
Referenced by TalkManager::MainResponder().
|
static |
Definition at line 897 of file cvmfs.cc.
Referenced by cvmfs_open().
|
static |
Definition at line 224 of file cvmfs.cc.
Referenced by cvmfs_getattr(), cvmfs_getxattr(), cvmfs_listxattr(), cvmfs_lookup(), cvmfs_open(), cvmfs_opendir(), and cvmfs_readlink().
|
static |
Definition at line 297 of file cvmfs.cc.
Referenced by cvmfs_lookup(), cvmfs_opendir(), Evict(), and Pin().
|
inlinestatic |
Definition at line 177 of file cvmfs.cc.
Referenced by cvmfs_getattr(), and cvmfs_lookup().
|
static |
Definition at line 339 of file cvmfs.cc.
Referenced by cvmfs_getxattr(), cvmfs_listxattr(), cvmfs_lookup(), cvmfs_open(), cvmfs_opendir(), and DoTraceInode().
void cvmfs::GetReloadStatus | ( | bool * | drainout_mode, |
bool * | maintenance_mode | ||
) |
Definition at line 184 of file cvmfs.cc.
Referenced by TalkManager::MainResponder().
bool cvmfs::Pin | ( | const std::string & | path | ) |
bool cvmfs::Pin | ( | const string & | path | ) |
Definition at line 1542 of file cvmfs.cc.
Referenced by TalkManager::MainResponder().
std::string cvmfs::PrintInodeGeneration | ( | ) |
Definition at line 200 of file cvmfs.cc.
Referenced by TalkManager::MainResponder().
|
static |
Very large directory listings have to be sent in slices.
Definition at line 857 of file cvmfs.cc.
Referenced by cvmfs_readdir().
|
static |
Looks into dirent to decide if this is an EIO negative reply or an ENOENT negative reply. We do not need to store the reply in the negative cache tracker because ReplyNegative is called on inode queries. Inodes, however, change anyway when a new catalog is applied.
Definition at line 581 of file cvmfs.cc.
Referenced by cvmfs_getattr(), cvmfs_getxattr(), cvmfs_listxattr(), cvmfs_open(), cvmfs_opendir(), and cvmfs_readlink().
bool cvmfs::SendFuseFd | ( | const std::string & | socket_path | ) |
Definition at line 1684 of file cvmfs.cc.
Referenced by TalkManager::MainResponder().
|
static |
Puts the callback functions in one single structure
Definition at line 1647 of file cvmfs.cc.
Referenced by __attribute__().
void cvmfs::TLSDestructor | ( | void * | data | ) |
|
inlinestatic |
Definition at line 380 of file cvmfs.cc.
Referenced by cvmfs_getattr(), cvmfs_getxattr(), cvmfs_listxattr(), cvmfs_opendir(), cvmfs_readlink(), and cvmfs_statfs().
void cvmfs::UnregisterQuotaListener | ( | ) |
Definition at line 1673 of file cvmfs.cc.
Referenced by TalkManager::MainResponder().
|
static |
DirectoryHandles* cvmfs::directory_handles_ = NULL |
Definition at line 156 of file cvmfs.cc.
Referenced by cvmfs_readdir(), cvmfs_releasedir(), Init(), RestoreState(), SaveState(), and ShutdownMountpoint().
FileSystem* cvmfs::file_system_ = NULL |
Definition at line 122 of file cvmfs.cc.
Referenced by cvmfs_forget(), cvmfs_getattr(), cvmfs_lookup(), cvmfs_open(), cvmfs_opendir(), cvmfs_read(), cvmfs_readdir(), cvmfs_readlink(), cvmfs_release(), cvmfs_releasedir(), cvmfs_statfs(), Evict(), Fini(), FreeSavedState(), GetDirentForInode(), GetDirentForPath(), GetPathForInode(), Init(), Pin(), RestoreState(), SaveState(), and Spawn().
bool cvmfs::foreground_ |
Definition at line 135 of file loader.cc.
Referenced by FuseMain(), loader::ParseCmdLine(), and loader::ParseFuseOptions().
FuseRemounter* cvmfs::fuse_remounter_ = NULL |
Definition at line 127 of file cvmfs.cc.
Referenced by cvmfs_forget(), cvmfs_getattr(), cvmfs_getxattr(), cvmfs_listxattr(), cvmfs_lookup(), cvmfs_open(), cvmfs_opendir(), cvmfs_readlink(), cvmfs_statfs(), Evict(), GetKcacheTimeout(), GetReloadStatus(), Init(), MaintenanceMode(), Pin(), ExpiresMagicXattr::PrepareValueFenced(), ShutdownMountpoint(), and Spawn().
InodeGenerationInfo cvmfs::inode_generation_info_ |
Definition at line 128 of file cvmfs.cc.
Referenced by InodeMaxMagicXattr::GetValue(), Init(), PrintInodeGeneration(), RestoreState(), and SaveState().
const int cvmfs::kNumReservedFd = 512 |
Number of reserved file descriptors for internal use
Definition at line 164 of file cvmfs.cc.
Referenced by cvmfs_open(), and MaxFdMagicXattr::GetValue().
const loader::LoaderExports * cvmfs::loader_exports_ = NULL |
Definition at line 146 of file cvmfs.cc.
Referenced by FuseMain(), UptimeMagicXattr::GetValue(), Init(), TalkManager::MainResponder(), loader::Reload(), SendFuseFd(), and UseWatchdog().
pthread_mutex_t cvmfs::lock_directory_handles_ = PTHREAD_MUTEX_INITIALIZER |
Definition at line 157 of file cvmfs.cc.
Referenced by cvmfs_opendir(), cvmfs_readdir(), and cvmfs_releasedir().
unsigned cvmfs::max_open_files_ |
maximum allowed number of open files
Definition at line 160 of file cvmfs.cc.
Referenced by cvmfs_open(), MaxFdMagicXattr::GetValue(), and Init().
MountPoint* cvmfs::mount_point_ = NULL |
Definition at line 123 of file cvmfs.cc.
Referenced by CheckVoms(), cvmfs_forget(), cvmfs_getattr(), cvmfs_getxattr(), cvmfs_init(), cvmfs_listxattr(), cvmfs_lookup(), cvmfs_open(), cvmfs_opendir(), cvmfs_read(), cvmfs_readdir(), cvmfs_readlink(), cvmfs_release(), cvmfs_releasedir(), cvmfs_statfs(), DoTraceInode(), FuseMain(), GetDirentForInode(), GetDirentForPath(), GetKcacheTimeout(), GetPathForInode(), InodeMaxMagicXattr::GetValue(), Init(), MaintenanceMode(), loader::ParseCmdLine(), loader::ParseFuseOptions(), Pin(), PrintInodeGeneration(), RegisterMagicXattrs(), RestoreState(), SaveState(), ShutdownMountpoint(), Spawn(), and TraceInode().
uint64_t cvmfs::next_directory_handle_ = 0 |
Definition at line 158 of file cvmfs.cc.
Referenced by cvmfs_opendir(), and RestoreState().
NotificationClient* cvmfs::notification_client_ = NULL |
Definition at line 125 of file cvmfs.cc.
Referenced by Init(), ShutdownMountpoint(), and Spawn().
OptionsManager* cvmfs::options_mgr_ = NULL |
Definition at line 147 of file cvmfs.cc.
Referenced by Fini(), Init(), and InitOptionsMgr().
pid_t cvmfs::pid_ = 0 |
will be set after deamon()
Definition at line 148 of file cvmfs.cc.
Referenced by PidMagicXattr::GetValue(), TalkManager::MainResponder(), and Spawn().
std::string* cvmfs::repository_name_ |
Definition at line 127 of file loader.cc.
Referenced by FuseMain(), loader::ParseCmdLine(), and loader::ParseFuseOptions().
TalkManager* cvmfs::talk_mgr_ = NULL |
Definition at line 124 of file cvmfs.cc.
Referenced by Init(), ShutdownMountpoint(), and Spawn().
quota::ListenerHandle* cvmfs::unpin_listener_ = NULL |
Definition at line 150 of file cvmfs.cc.
Referenced by ShutdownMountpoint(), Spawn(), and UnregisterQuotaListener().
Watchdog* cvmfs::watchdog_ = NULL |
quota::ListenerHandle* cvmfs::watchdog_listener_ = NULL |
Definition at line 149 of file cvmfs.cc.
Referenced by ShutdownMountpoint(), Spawn(), and UnregisterQuotaListener().