Go to the source code of this file.
Classes | |
struct | LruPolicyData |
class | LruNode |
struct | _LruWalkData |
struct | _LruPurgeData |
Typedefs | |
typedef struct _LruWalkData | LruWalkData |
typedef struct _LruPurgeData | LruPurgeData |
Functions | |
static enum LruPolicyData::heap_entry_type | repl_guessType (StoreEntry *entry, RemovalPolicyNode *node) |
static void | lru_add (RemovalPolicy *policy, StoreEntry *entry, RemovalPolicyNode *node) |
static void | lru_remove (RemovalPolicy *policy, StoreEntry *entry, RemovalPolicyNode *node) |
static void | lru_referenced (RemovalPolicy *policy, const StoreEntry *entry, RemovalPolicyNode *node) |
static const StoreEntry * | lru_walkNext (RemovalPolicyWalker *walker) |
static void | lru_walkDone (RemovalPolicyWalker *walker) |
static RemovalPolicyWalker * | lru_walkInit (RemovalPolicy *policy) |
static StoreEntry * | lru_purgeNext (RemovalPurgeWalker *walker) |
static void | lru_purgeDone (RemovalPurgeWalker *walker) |
static RemovalPurgeWalker * | lru_purgeInit (RemovalPolicy *policy, int max_scan) |
static void | lru_stats (RemovalPolicy *policy, StoreEntry *sentry) |
static void | lru_free (RemovalPolicy *policy) |
RemovalPolicy * | createRemovalPolicy_lru (wordlist *args) |
Variables | |
REMOVALPOLICYCREATE | createRemovalPolicy_lru |
static int | nr_lru_policies = 0 |
Typedef Documentation
◆ LruPurgeData
typedef struct _LruPurgeData LruPurgeData |
Definition at line 186 of file store_repl_lru.cc.
◆ LruWalkData
typedef struct _LruWalkData LruWalkData |
Definition at line 135 of file store_repl_lru.cc.
Function Documentation
◆ createRemovalPolicy_lru()
RemovalPolicy * createRemovalPolicy_lru | ( | wordlist * | args | ) |
Definition at line 298 of file store_repl_lru.cc.
References RemovalPolicy::_data, RemovalPolicy::_type, RemovalPolicy::Add, assert, RemovalPolicy::Dereferenced, RemovalPolicy::Free, lru_add(), lru_free(), lru_purgeInit(), lru_referenced(), lru_remove(), lru_stats(), lru_walkInit(), nr_lru_policies, LruPolicyData::policy, RemovalPolicy::PurgeInit, RemovalPolicy::Referenced, RemovalPolicy::Remove, RemovalPolicy::Stats, RemovalPolicy::WalkInit, and xcalloc().
◆ lru_add()
|
static |
Definition at line 77 of file store_repl_lru.cc.
References RemovalPolicy::_data, assert, LruPolicyData::count, dlinkAddTail(), LruPolicyData::list, repl_guessType(), and LruPolicyData::type.
Referenced by createRemovalPolicy_lru().
◆ lru_free()
|
static |
Definition at line 284 of file store_repl_lru.cc.
References RemovalPolicy::_data, RemovalPolicy::_type, assert, LruPolicyData::count, LruPolicyData::nwalkers, and safe_free.
Referenced by createRemovalPolicy_lru().
◆ lru_purgeDone()
|
static |
Definition at line 234 of file store_repl_lru.cc.
References RemovalPolicy::_data, RemovalPurgeWalker::_data, RemovalPurgeWalker::_policy, RemovalPolicy::_type, assert, LruPolicyData::nwalkers, and safe_free.
Referenced by lru_purgeInit().
◆ lru_purgeInit()
|
static |
Definition at line 246 of file store_repl_lru.cc.
References RemovalPolicy::_data, dlink_list::head, LruPolicyData::list, lru_purgeDone(), lru_purgeNext(), LruPolicyData::nwalkers, and xcalloc().
Referenced by createRemovalPolicy_lru().
◆ lru_purgeNext()
|
static |
Definition at line 194 of file store_repl_lru.cc.
References RemovalPurgeWalker::_data, RemovalPurgeWalker::_policy, _LruPurgeData::current, dlink_node::data, dlinkAddTail(), dlinkDelete(), RemovalPurgeWalker::locked, StoreEntry::locked(), RemovalPurgeWalker::max_scan, dlink_node::next, LruNode::node, RemovalPurgeWalker::scanned, and _LruPurgeData::start.
Referenced by lru_purgeInit().
◆ lru_referenced()
|
static |
Definition at line 119 of file store_repl_lru.cc.
References RemovalPolicy::_data, dlinkAddTail(), dlinkDelete(), and LruPolicyData::list.
Referenced by createRemovalPolicy_lru().
◆ lru_remove()
|
static |
Definition at line 91 of file store_repl_lru.cc.
References RemovalPolicy::_data, assert, LruPolicyData::count, dlinkDelete(), and LruPolicyData::list.
Referenced by createRemovalPolicy_lru().
◆ lru_stats()
|
static |
Definition at line 264 of file store_repl_lru.cc.
References RemovalPolicy::_data, dlink_list::head, StoreEntry::lastref, LruPolicyData::list, StoreEntry::locked(), hash_link::next, squid_curtime, and storeAppendPrintf().
Referenced by createRemovalPolicy_lru().
◆ lru_walkDone()
|
static |
Definition at line 156 of file store_repl_lru.cc.
References RemovalPolicy::_data, RemovalPolicyWalker::_data, RemovalPolicyWalker::_policy, RemovalPolicy::_type, assert, LruPolicyData::nwalkers, and safe_free.
Referenced by lru_walkInit().
◆ lru_walkInit()
|
static |
Definition at line 168 of file store_repl_lru.cc.
References RemovalPolicy::_data, dlink_list::head, LruPolicyData::list, lru_walkDone(), lru_walkNext(), LruPolicyData::nwalkers, and xcalloc().
Referenced by createRemovalPolicy_lru().
◆ lru_walkNext()
|
static |
Definition at line 142 of file store_repl_lru.cc.
References RemovalPolicyWalker::_data, _LruWalkData::current, dlink_node::data, dlink_node::next, and LruNode::node.
Referenced by lru_walkInit().
◆ repl_guessType()
|
static |
Definition at line 32 of file store_repl_lru.cc.
References fatal(), StoreEntry::mem_obj, MemObject::repl, StoreEntry::repl, LruPolicyData::TYPE_STORE_ENTRY, LruPolicyData::TYPE_STORE_MEM, and LruPolicyData::TYPE_UNKNOWN.
Referenced by lru_add().
Variable Documentation
◆ createRemovalPolicy_lru
REMOVALPOLICYCREATE createRemovalPolicy_lru |
Definition at line 15 of file store_repl_lru.cc.
Referenced by TestUfs::commonInit().
◆ nr_lru_policies
|
static |
Definition at line 74 of file store_repl_lru.cc.
Referenced by createRemovalPolicy_lru().