#include <XrdOssCache.hh>
Public Member Functions | |
XrdOssCache () | |
~XrdOssCache () | |
Static Public Member Functions | |
static void | Adjust (dev_t devid, off_t size) |
static void | Adjust (const char *Path, off_t size, struct stat *buf=0) |
static void | Adjust (XrdOssCache_FS *fsp, off_t size) |
static int | Alloc (allocInfo &aInfo) |
static XrdOssCache_FS * | Find (const char *Path, int lklen=0) |
static int | Init (const char *UDir, const char *Qfile, int isSOL) |
static int | Init (long long aMin, int ovhd, int aFuzz) |
static void | List (const char *lname, XrdSysError &Eroute) |
static char * | Parse (const char *token, char *cbuff, int cblen) |
static void * | Scan (int cscanint) |
Static Public Attributes | |
static XrdSysMutex | Mutex |
static long long | fsTotal |
static long long | fsLarge |
static long long | fsTotFr |
static long long | fsFree |
static long long | fsSize |
static XrdOssCache_FS * | fsfirst |
static XrdOssCache_FS * | fslast |
static XrdOssCache_FSData * | fsdata |
static int | fsCount |
Static Private Attributes | |
static long long | minAlloc |
static double | fuzAlloc |
static int | ovhAlloc |
static int | Quotas |
static int | Usage |
Classes | |
struct | allocInfo |
Definition at line 169 of file XrdOssCache.hh.
XrdOssCache::XrdOssCache | ( | ) | [inline] |
Definition at line 211 of file XrdOssCache.hh.
XrdOssCache::~XrdOssCache | ( | ) | [inline] |
Definition at line 212 of file XrdOssCache.hh.
void XrdOssCache::Adjust | ( | dev_t | devid, | |
off_t | size | |||
) | [static] |
Definition at line 303 of file XrdOssCache.cc.
References DEBUG, EPNAME, XrdOssCache_FSData::frsz, fsdata, XrdOssCache_Group::fsgroups, XrdOssCache_FSData::fsid, XrdOssCache_Group::group, XrdSysMutex::Lock(), Mutex, XrdOssCache_FSData::next, XrdOssCache_Group::next, XrdOssCache_FSData::path, XrdOssCache_FSData::stat, XrdSysMutex::UnLock(), XrdOssCache_Group::Usage, and XrdOssFSData_ADJUSTED.
Referenced by Adjust(), XrdOssSys::BreakLink(), XrdOssFile::Close(), XrdOssSys::Create(), XrdOssSys::Reloc(), XrdOssSys::RenameLink(), XrdOssSys::Truncate(), and XrdOssSys::Unlink().
void XrdOssCache::Adjust | ( | const char * | Path, | |
off_t | size, | |||
struct stat * | buf = 0 | |||
) | [static] |
Definition at line 336 of file XrdOssCache.cc.
References Adjust(), DEBUG, EPNAME, fsfirst, XrdOssCache_FS::next, XrdOssCache_FS::path, and XrdOssPath::Trim2Base().
void XrdOssCache::Adjust | ( | XrdOssCache_FS * | fsp, | |
off_t | size | |||
) | [static] |
Definition at line 369 of file XrdOssCache.cc.
References XrdOssSpace::Adjust(), DEBUG, EPNAME, XrdOssCache_FSData::frsz, XrdOssCache_FS::fsdata, XrdOssCache_FS::fsgroup, XrdOssCache_Group::GRPid, XrdSysMutex::Lock(), Mutex, XrdOssCache_FSData::path, XrdOssCache_FS::path, XrdOssCache_FSData::stat, XrdSysMutex::UnLock(), Usage, XrdOssCache_Group::Usage, and XrdOssFSData_ADJUSTED.
int XrdOssCache::Alloc | ( | allocInfo & | aInfo | ) | [static] |
Definition at line 393 of file XrdOssCache.cc.
References XrdOssCache::allocInfo::aMode, XrdOssCache::allocInfo::cgFSp, XrdOssCache::allocInfo::cgName, XrdOssCache::allocInfo::cgPath, XrdOssCache::allocInfo::cgPFbf, XrdOssCache::allocInfo::cgPFsz, XrdOssCache::allocInfo::cgPlen, XrdOssCache::allocInfo::cgPsfx, XrdOssCache::allocInfo::cgSize, XrdOssCache_Group::curr, DEBUG, ENOSYS, EPNAME, XrdOssCache_FSData::frsz, XrdOssCache_FS::fsdata, XrdOssCache_Group::fsgroups, fuzAlloc, XrdOssPath::genPFN(), XrdOssCache_Group::group, XrdOssCache_FS::group, Info, XrdOssCache_FS::isXA, minAlloc, mkdir, Mutex, XrdOssCache_FS::next, XrdOssCache_Group::next, open, XrdOssCache_FS::opts, ovhAlloc, XrdOssCache_FSData::path, XrdOssCache::allocInfo::Path, XrdOssCache_FS::path, XrdOssCache_FS::plen, S_IRWXG, S_IRWXU, size, XrdOssCache_FSData::stat, XrdOssCache_FS::suffix, XRDABS, and XrdOssFSData_REFRESH.
Referenced by XrdOssSys::Alloc_Cache(), and XrdOssSys::Reloc().
XrdOssCache_FS * XrdOssCache::Find | ( | const char * | Path, | |
int | lklen = 0 | |||
) | [static] |
Definition at line 486 of file XrdOssCache.cc.
References fsfirst, lstat, XrdOssCache_FS::next, XrdOssCache_FS::path, stat, strlcpy(), and XrdOssPath::Trim2Base().
Referenced by XrdOssFile::Open(), and XrdOssSys::Reloc().
int XrdOssCache::Init | ( | const char * | UDir, | |
const char * | Qfile, | |||
int | isSOL | |||
) | [static] |
Definition at line 519 of file XrdOssCache.cc.
References XrdOssSpace::Assign(), XrdOssCache_Group::fsgroups, XrdOssCache_Group::group, XrdOssCache_Group::GRPid, XrdOssSpace::Init(), XrdOssCache_Group::next, Quotas, Usage, and XrdOssCache_Group::Usage.
Referenced by XrdOssSys::Configure().
void XrdOssCache::List | ( | const char * | lname, | |
XrdSysError & | Eroute | |||
) | [static] |
Definition at line 557 of file XrdOssCache.cc.
References fsfirst, XrdOssCache_FS::group, XrdOssCache_FS::isXA, XrdOssCache_FS::next, XrdOssCache_FS::opts, XrdOssCache_FS::path, XrdOssCache_FS::plen, XrdSysError::Say(), and snprintf.
Referenced by XrdOssSys::Config_Display().
char * XrdOssCache::Parse | ( | const char * | token, | |
char * | cbuff, | |||
int | cblen | |||
) | [static] |
Definition at line 581 of file XrdOssCache.cc.
References n, OSS_CGROUP_DEFAULT, Path, and strlcpy().
Referenced by XrdOssSys::Alloc_Cache(), and XrdOssSys::Reloc().
void * XrdOssCache::Scan | ( | int | cscanint | ) | [static] |
Definition at line 610 of file XrdOssCache.cc.
References DEBUG, XrdSysError::Emsg(), EPNAME, XrdOssCache_FS::freeSpace(), XrdOssCache_FSData::frsz, fsdata, fsFree, XrdOssCache_Group::fsgroups, fsSize, fsTotFr, XrdOssCache_Group::GRPid, XrdSysMutex::Lock(), Mutex, XrdOssCache_FSData::next, XrdOssCache_Group::next, XrdOssCache_FSData::path, XrdOssSpace::Quotas(), Quotas, XrdOssSpace::Readjust(), XrdOssCache_FSData::size, XrdOssCache_FSData::stat, XrdSysMutex::UnLock(), Usage, XrdOssCache_Group::Usage, XrdOssSpace::Usage(), XrdOssFSData_ADJUSTED, and XrdOssFSData_REFRESH.
Referenced by XrdOssSys::StatVS(), and XrdOssCacheScan().
XrdSysMutex XrdOssCache::Mutex [static] |
Definition at line 214 of file XrdOssCache.hh.
Referenced by Adjust(), Alloc(), XrdOssCache_FS::freeSpace(), XrdOssCache_FS::getSpace(), Scan(), and XrdOssSys::StatVS().
long long XrdOssCache::fsTotal [static] |
Definition at line 216 of file XrdOssCache.hh.
Referenced by XrdOssSys::StatVS(), and XrdOssCache_FSData::XrdOssCache_FSData().
long long XrdOssCache::fsLarge [static] |
Definition at line 217 of file XrdOssCache.hh.
Referenced by XrdOssSys::StatVS(), and XrdOssCache_FSData::XrdOssCache_FSData().
long long XrdOssCache::fsTotFr [static] |
Definition at line 218 of file XrdOssCache.hh.
Referenced by Scan(), XrdOssSys::StatVS(), and XrdOssCache_FSData::XrdOssCache_FSData().
long long XrdOssCache::fsFree [static] |
Definition at line 219 of file XrdOssCache.hh.
Referenced by XrdOssCache_FS::freeSpace(), Scan(), XrdOssSys::StatVS(), and XrdOssCache_FSData::XrdOssCache_FSData().
long long XrdOssCache::fsSize [static] |
Definition at line 220 of file XrdOssCache.hh.
Referenced by XrdOssCache_FS::freeSpace(), and Scan().
XrdOssCache_FS * XrdOssCache::fsfirst [static] |
Definition at line 221 of file XrdOssCache.hh.
Referenced by Adjust(), XrdOssSys::Create(), Find(), XrdOssCache_FS::getSpace(), List(), and XrdOssCache_FS::XrdOssCache_FS().
XrdOssCache_FS * XrdOssCache::fslast [static] |
XrdOssCache_FSData * XrdOssCache::fsdata [static] |
Definition at line 223 of file XrdOssCache.hh.
Referenced by XrdOssCache_FS::Add(), Adjust(), Scan(), and XrdOssCache_FS::XrdOssCache_FS().
int XrdOssCache::fsCount [static] |
Definition at line 224 of file XrdOssCache.hh.
Referenced by XrdOssSys::StatVS(), and XrdOssCache_FSData::XrdOssCache_FSData().
long long XrdOssCache::minAlloc [static, private] |
double XrdOssCache::fuzAlloc [static, private] |
int XrdOssCache::ovhAlloc [static, private] |
int XrdOssCache::Quotas [static, private] |
int XrdOssCache::Usage [static, private] |