diff --git a/src/defrag-hash.c b/src/defrag-hash.c index 2f1e4e832f..98921b8021 100644 --- a/src/defrag-hash.c +++ b/src/defrag-hash.c @@ -275,7 +275,8 @@ void DefragInitConfig(bool quiet) } if (!quiet) { SCLogConfig("preallocated %" PRIu32 " defrag trackers of size %" PRIuMAX "", - defragtracker_spare_q.len, (uintmax_t)sizeof(DefragTracker)); + DefragTrackerStackSize(&defragtracker_spare_q), + (uintmax_t)sizeof(DefragTracker)); } } } diff --git a/src/defrag-stack.c b/src/defrag-stack.c index 22d5776df9..987e3c81f1 100644 --- a/src/defrag-stack.c +++ b/src/defrag-stack.c @@ -98,3 +98,15 @@ DefragTracker *DefragTrackerDequeue(DefragTrackerStack *q) DQLOCK_UNLOCK(q); return dt; } + +/** + * \brief return stack size + */ +uint32_t DefragTrackerStackSize(DefragTrackerStack *q) +{ + uint32_t len; + DQLOCK_LOCK(q); + len = q->len; + DQLOCK_UNLOCK(q); + return len; +} diff --git a/src/defrag-stack.h b/src/defrag-stack.h index 99bb126814..7ed657a6f8 100644 --- a/src/defrag-stack.h +++ b/src/defrag-stack.h @@ -75,5 +75,6 @@ void DefragTrackerStackDestroy(DefragTrackerStack *); void DefragTrackerEnqueue(DefragTrackerStack *, DefragTracker *); DefragTracker *DefragTrackerDequeue(DefragTrackerStack *); +uint32_t DefragTrackerStackSize(DefragTrackerStack *q); #endif /* SURICATA_DEFRAG_QUEUE_H */