diff --git a/src/detect.c b/src/detect.c index aba0a2c641..eeb11eaeec 100644 --- a/src/detect.c +++ b/src/detect.c @@ -1333,6 +1333,7 @@ int SigMatchSignatures(ThreadVars *th_v, DetectEngineCtx *de_ctx, DetectEngineTh PacketCreateMask(p, &mask, alproto, has_state, smsg, app_decoder_events); /* prefilter non_mpm list against the mask of the packet */ + PACKET_PROFILING_DETECT_START(p, PROF_DETECT_NONMPMLIST); det_ctx->non_mpm_id_cnt = 0; uint32_t x = 0; for (x = 0; x < det_ctx->sgh->non_mpm_store_cnt; x++) { @@ -1343,6 +1344,7 @@ int SigMatchSignatures(ThreadVars *th_v, DetectEngineCtx *de_ctx, DetectEngineTh det_ctx->non_mpm_id_array[det_ctx->non_mpm_id_cnt++] = det_ctx->sgh->non_mpm_store_array[x].id; } } + PACKET_PROFILING_DETECT_END(p, PROF_DETECT_NONMPMLIST); /* run the mpm for each type */ PACKET_PROFILING_DETECT_START(p, PROF_DETECT_MPM); diff --git a/src/suricata-common.h b/src/suricata-common.h index deb0e077cc..d7126a874f 100644 --- a/src/suricata-common.h +++ b/src/suricata-common.h @@ -309,6 +309,7 @@ typedef enum PacketProfileDetectId_ { PROF_DETECT_RULES, PROF_DETECT_STATEFUL, PROF_DETECT_PREFILTER, + PROF_DETECT_NONMPMLIST, PROF_DETECT_ALERT, PROF_DETECT_CLEANUP, PROF_DETECT_GETSGH, diff --git a/src/util-profiling.c b/src/util-profiling.c index 7a1ce29099..dfe8c7744b 100644 --- a/src/util-profiling.c +++ b/src/util-profiling.c @@ -1035,6 +1035,7 @@ const char * PacketProfileDetectIdToString(PacketProfileDetectId id) CASE_CODE (PROF_DETECT_ALERT); CASE_CODE (PROF_DETECT_CLEANUP); CASE_CODE (PROF_DETECT_GETSGH); + CASE_CODE (PROF_DETECT_NONMPMLIST); case PROF_DETECT_MPM_PKT_STREAM: return "PROF_DETECT_MPM_PKT_STR"; default: