suricata
|
Go to the source code of this file.
Data Structures | |
struct | ThreadsAffinityType_ |
Typedefs | |
typedef struct ThreadsAffinityType_ | ThreadsAffinityType |
Enumerations | |
enum | { RECEIVE_CPU_SET, WORKER_CPU_SET, VERDICT_CPU_SET, MANAGEMENT_CPU_SET, MAX_CPU_SET } |
enum | { BALANCED_AFFINITY, EXCLUSIVE_AFFINITY, MAX_AFFINITY } |
Functions | |
void | AffinitySetupLoadFromConfig (void) |
Extract cpu affinity configuration from current config file. More... | |
ThreadsAffinityType * | GetAffinityTypeFromName (const char *name) |
find affinity by its name More... | |
int | AffinityGetNextCPU (ThreadsAffinityType *taf) |
Return next cpu to use for a given thread family. More... | |
void | BuildCpusetWithCallback (const char *name, ConfNode *node, void(*Callback)(int i, void *data), void *data) |
Variables | |
ThreadsAffinityType | thread_affinity [MAX_CPU_SET] |
Definition in file util-affinity.h.
typedef struct ThreadsAffinityType_ ThreadsAffinityType |
anonymous enum |
Enumerator | |
---|---|
RECEIVE_CPU_SET | |
WORKER_CPU_SET | |
VERDICT_CPU_SET | |
MANAGEMENT_CPU_SET | |
MAX_CPU_SET |
Definition at line 50 of file util-affinity.h.
anonymous enum |
Enumerator | |
---|---|
BALANCED_AFFINITY | |
EXCLUSIVE_AFFINITY | |
MAX_AFFINITY |
Definition at line 58 of file util-affinity.h.
int AffinityGetNextCPU | ( | ThreadsAffinityType * | taf | ) |
Return next cpu to use for a given thread family.
the | cpu to used given by its id |
Definition at line 297 of file util-affinity.c.
References ThreadsAffinityType_::cpu_set, ThreadsAffinityType_::lcpu, SC_ERR_INVALID_ARGUMENT, SCLogDebug, SCLogError, SCMutexLock, SCMutexUnlock, ThreadsAffinityType_::taf_mutex, and UtilCpuGetNumProcessorsOnline().
Referenced by TmThreadSetupOptions().
void AffinitySetupLoadFromConfig | ( | void | ) |
Extract cpu affinity configuration from current config file.
Definition at line 179 of file util-affinity.c.
References BALANCED_AFFINITY, ConfGetNode(), ConfNodeLookupChild(), ThreadsAffinityType_::cpu_set, EXCLUSIVE_AFFINITY, GetAffinityTypeFromName(), ThreadsAffinityType_::hiprio_cpu, ThreadsAffinityType_::lowprio_cpu, ThreadsAffinityType_::medprio_cpu, ThreadsAffinityType_::mode_flag, ThreadsAffinityType_::nb_threads, next, ThreadsAffinityType_::prio, PRIO_HIGH, PRIO_LOW, PRIO_MEDIUM, SC_ERR_INVALID_ARGUMENT, SCLogDebug, SCLogError, SCLogInfo, TAILQ_FOREACH, thread_affinity_init_done, and ConfNode_::val.
Referenced by RunModeInitialize().
void BuildCpusetWithCallback | ( | const char * | name, |
ConfNode * | node, | ||
void(*)(int i, void *data) | Callback, | ||
void * | data | ||
) |
Definition at line 98 of file util-affinity.c.
References BuildCpusetWithCallback(), index, next, SC_ERR_INVALID_ARGUMENT, SCLogError, TAILQ_FOREACH, UtilCpuGetNumProcessorsOnline(), and ConfNode_::val.
Referenced by BuildCpusetWithCallback().
ThreadsAffinityType* GetAffinityTypeFromName | ( | const char * | name | ) |
find affinity by its name
a | pointer to the affinity or NULL if not found |
Definition at line 68 of file util-affinity.c.
References ThreadsAffinityType_::cpu_set, MAX_CPU_SET, SCLogDebug, SCMutexInit, and UtilCpuGetNumProcessorsConfigured().
Referenced by AffinitySetupLoadFromConfig().
ThreadsAffinityType thread_affinity[MAX_CPU_SET] |
store thread affinity mode for all type of threads
Definition at line 34 of file util-affinity.c.
Referenced by TmThreadGetNbThreads(), and TmThreadSetupOptions().