Refactor the code that initializes the cuda mpm environment.
pull/449/merge
Anoop Saldanha 12 years ago committed by Victor Julien
parent 9f3e2f7a92
commit cdaa13012a

@ -1361,6 +1361,9 @@ int main(int argc, char **argv)
/* load the pattern matchers */
MpmTableSetup();
#ifdef __SC_CUDA_SUPPORT__
MpmCudaEnvironmentSetup();
#endif
AppLayerDetectProtoThreadInit();
if (list_app_layer_protocols) {

@ -2163,19 +2163,6 @@ void MpmACCudaRegister(void)
mpm_table[MPM_AC_CUDA].PrintThreadCtx = SCACPrintSearchStats;
mpm_table[MPM_AC_CUDA].RegisterUnittests = SCACRegisterTests;
if (PatternMatchDefaultMatcher() == MPM_AC_CUDA) {
MpmCudaConf *conf = CudaHandlerGetCudaProfile("mpm");
if (conf == NULL) {
SCLogError(SC_ERR_AC_CUDA_ERROR, "Error obtaining cuda mpm profile.");
exit(EXIT_FAILURE);
}
if (MpmCudaBufferSetup() < 0) {
SCLogError(SC_ERR_AC_CUDA_ERROR, "Error setting up env for ac cuda");
exit(EXIT_FAILURE);
}
}
return;
}

@ -47,6 +47,7 @@
#include "util-unittest.h"
#ifdef __SC_CUDA_SUPPORT__
#include "util-cuda-handlers.h"
#include "detect-engine-mpm.h"
#endif
/**
@ -378,6 +379,30 @@ static void *MpmCudaConfParse(ConfNode *node)
return conf;
}
void MpmCudaEnvironmentSetup()
{
if (PatternMatchDefaultMatcher() != MPM_AC_CUDA)
return;
CudaHandlerAddCudaProfileFromConf("mpm", MpmCudaConfParse, MpmCudaConfFree);
MpmCudaConf *conf = CudaHandlerGetCudaProfile("mpm");
if (conf == NULL) {
SCLogError(SC_ERR_AC_CUDA_ERROR, "Error obtaining cuda mpm "
"profile.");
exit(EXIT_FAILURE);
}
if (MpmCudaBufferSetup() < 0) {
SCLogError(SC_ERR_AC_CUDA_ERROR, "Error setting up env for ac "
"cuda");
exit(EXIT_FAILURE);
}
return;
}
#endif
/**
@ -565,7 +590,6 @@ void MpmTableSetup(void) {
MpmACBSRegister();
MpmACGfbsRegister();
#ifdef __SC_CUDA_SUPPORT__
CudaHandlerAddCudaProfileFromConf("mpm", MpmCudaConfParse, MpmCudaConfFree);
MpmACCudaRegister();
#endif /* __SC_CUDA_SUPPORT__ */
}

@ -212,6 +212,8 @@ typedef struct MpmCudaConf_ {
int cuda_streams;
} MpmCudaConf;
void MpmCudaEnvironmentSetup();
#endif /* __SC_CUDA_SUPPORT__ */
struct DetectEngineCtx_;

Loading…
Cancel
Save