|
xrootd
|
#include <XrdOssMio.hh>

Static Public Member Functions | |
| static void | Display (XrdSysError &Eroute) |
| static char | isAuto () |
| static char | isOn () |
| static XrdOssMioFile * | Map (char *path, int fd, int opts) |
| static void * | preLoad (void *arg) |
| static void | Recycle (XrdOssMioFile *mp) |
| static void | Set (int V_off, int V_preld, int V_check) |
| static void | Set (long long V_max) |
Static Private Member Functions | |
| static int | Reclaim (off_t amount) |
| static int | Reclaim (XrdOssMioFile *mp) |
Static Private Attributes | |
| static XrdOucHash< XrdOssMioFile > | MM_Hash |
| static XrdSysMutex | MM_Mutex |
| static XrdOssMioFile * | MM_Perm = 0 |
| static XrdOssMioFile * | MM_Idle = 0 |
| static XrdOssMioFile * | MM_IdleLast = 0 |
| static char | MM_on = 1 |
| static char | MM_chk = 0 |
| static char | MM_okmlock = 1 |
| static char | MM_preld = 0 |
| static long long | MM_max = MM_pagsz*MM_pages/2 |
| static long long | MM_pagsz = (long long)sysconf(_SC_PAGESIZE) |
| static long long | MM_pages = (long long)sysconf(_SC_PHYS_PAGES) |
| static long long | MM_inuse = 0 |
| void XrdOssMio::Display | ( | XrdSysError & | Eroute | ) | [static] |
| static char XrdOssMio::isAuto | ( | ) | [inline, static] |
References MM_chk.
Referenced by XrdOssSys::ConfigMio().
| static char XrdOssMio::isOn | ( | ) | [inline, static] |
References MM_on.
Referenced by XrdOssSys::ConfigMio().
| XrdOssMioFile * XrdOssMio::Map | ( | char * | path, |
| int | fd, | ||
| int | opts | ||
| ) | [static] |
References EPNAME, stat(), fstat(), XrdSysError::Emsg(), XrdOucTrace::bin2hex(), XrdSysMutexHelper::Lock(), MM_Mutex, MM_Hash, XrdOucHash::Find(), DEBUG, OSSMIO_MPRM, Reclaim(), MM_inuse, MM_max, MM_okmlock, OSSMIO_MLOK, opts, XrdOucHash::Add(), MM_Perm, MM_preld, XrdSysThread::Run(), and preLoad().
Referenced by XrdOssFile::Open().
| void * XrdOssMio::preLoad | ( | void * | arg | ) | [static] |
References XrdOssMioFile::Base, XrdOssMioFile::Size, MM_pagsz, and Recycle().
Referenced by Map().
| int XrdOssMio::Reclaim | ( | off_t | amount | ) | [static, private] |
References EPNAME, DEBUG, MM_Idle, XrdOssMioFile::Next, MM_inuse, XrdOssMioFile::Size, MM_Hash, XrdOucHash::Del(), and XrdOssMioFile::HashName.
Referenced by Map().
| int XrdOssMio::Reclaim | ( | XrdOssMioFile * | mp | ) | [static, private] |
References EPNAME, MM_Idle, XrdOssMioFile::Next, MM_IdleLast, DEBUG, XrdOssMioFile::Dev, and XrdOssMioFile::Ino.
| void XrdOssMio::Recycle | ( | XrdOssMioFile * | mp | ) | [static] |
References MM_Mutex, XrdOssMioFile::inUse, XrdSysError::Emsg(), XrdOssMioFile::HashName, XrdOssMioFile::Status, OSSMIO_MPRM, MM_IdleLast, XrdOssMioFile::Next, and MM_Idle.
Referenced by XrdOssFile::Close(), and preLoad().
| void XrdOssMio::Set | ( | int | V_off, |
| int | V_preld, | ||
| int | V_check | ||
| ) | [static] |
References MM_on, MM_preld, and MM_chk.
Referenced by XrdOssSys::ConfigMio(), and XrdOssSys::xmemf().
char XrdOssMio::MM_chk = 0 [static, private] |
XrdOucHash< XrdOssMioFile > XrdOssMio::MM_Hash [static, private] |
XrdOssMioFile * XrdOssMio::MM_Idle = 0 [static, private] |
XrdOssMioFile * XrdOssMio::MM_IdleLast = 0 [static, private] |
long long XrdOssMio::MM_inuse = 0 [static, private] |
long long XrdOssMio::MM_max = MM_pagsz*MM_pages/2 [static, private] |
XrdSysMutex XrdOssMio::MM_Mutex [static, private] |
char XrdOssMio::MM_okmlock = 1 [static, private] |
Referenced by Map().
char XrdOssMio::MM_on = 1 [static, private] |
long long XrdOssMio::MM_pages = (long long)sysconf(_SC_PHYS_PAGES) [static, private] |
Referenced by Set().
long long XrdOssMio::MM_pagsz = (long long)sysconf(_SC_PAGESIZE) [static, private] |
XrdOssMioFile * XrdOssMio::MM_Perm = 0 [static, private] |
Referenced by Map().
char XrdOssMio::MM_preld = 0 [static, private] |
1.7.5