diff --git a/src/app-layer-parser.c b/src/app-layer-parser.c index f94c81ddebb1..a80ac9484e9f 100644 --- a/src/app-layer-parser.c +++ b/src/app-layer-parser.c @@ -922,6 +922,7 @@ void AppLayerParserTransactionsCleanup(Flow *f) if (ires.tx_ptr == NULL) break; + bool tx_skipped = false; void *tx = ires.tx_ptr; i = ires.tx_id; // actual tx id for the tx the IterFunc returned @@ -950,7 +951,7 @@ void AppLayerParserTransactionsCleanup(Flow *f) if (!(detect_flags_ts & APP_LAYER_TX_INSPECTED_FLAG)) { SCLogDebug("%p/%"PRIu64" skipping: TS inspect not done: ts:%"PRIx64, tx, i, detect_flags_ts); - skipped = true; + tx_skipped = skipped = true; } else { inspected = true; } @@ -960,7 +961,7 @@ void AppLayerParserTransactionsCleanup(Flow *f) if (!(detect_flags_tc & APP_LAYER_TX_INSPECTED_FLAG)) { SCLogDebug("%p/%"PRIu64" skipping: TC inspect not done: tc:%"PRIx64, tx, i, detect_flags_tc); - skipped = true; + tx_skipped = skipped = true; } else { inspected = true; } @@ -969,7 +970,8 @@ void AppLayerParserTransactionsCleanup(Flow *f) // If not a unidirectional transaction both sides are required to have // been inspected. - if (!is_unidir && skipped) { + if (!is_unidir && tx_skipped) { + SCLogDebug("%p/%" PRIu64 " !is_unidir && tx_skipped", tx, i); goto next; } @@ -977,7 +979,8 @@ void AppLayerParserTransactionsCleanup(Flow *f) // inspected, which the inspected flag tells us. This is also guarded // with skip to limit this check to transactions that actually had the // tx inspected flag checked. - if (is_unidir && skipped && !inspected) { + if (is_unidir && tx_skipped && !inspected) { + SCLogDebug("%p/%" PRIu64 " is_unidir && tx_skipped && !inspected", tx, i); goto next; } diff --git a/src/flow-manager.c b/src/flow-manager.c index cb430ec74da4..d58a49637d6a 100644 --- a/src/flow-manager.c +++ b/src/flow-manager.c @@ -1011,7 +1011,7 @@ static TmEcode FlowManager(ThreadVars *th_v, void *thread_data) memset(&sleep_startts, 0, sizeof(sleep_startts)); gettimeofday(&sleep_startts, NULL); #endif - usleep(100); + usleep(250); #ifdef FM_PROFILE struct timeval sleep_endts; @@ -1207,7 +1207,7 @@ static TmEcode FlowRecycler(ThreadVars *th_v, void *thread_data) memset(&sleep_startts, 0, sizeof(sleep_startts)); gettimeofday(&sleep_startts, NULL); #endif - usleep(100); + usleep(250); #ifdef FM_PROFILE struct timeval sleep_endts; memset(&sleep_endts, 0, sizeof(sleep_endts));