diff --git a/src/stream-tcp-reassemble.c b/src/stream-tcp-reassemble.c index 25e618f16c..9238558c39 100644 --- a/src/stream-tcp-reassemble.c +++ b/src/stream-tcp-reassemble.c @@ -278,9 +278,11 @@ int StreamTcpReassembleInit(char quiet) StreamMsgQueuesInit(); /* init the memcap and it's lock */ + SCSpinInit(&stream_reassembly_memuse_spinlock, PTHREAD_PROCESS_PRIVATE); + SCSpinLock(&stream_reassembly_memuse_spinlock); stream_reassembly_memuse = 0; stream_reassembly_memuse_max = 0; - SCSpinInit(&stream_reassembly_memuse_spinlock, PTHREAD_PROCESS_PRIVATE); + SCSpinUnlock(&stream_reassembly_memuse_spinlock); #ifdef DEBUG SCMutexInit(&segment_pool_memuse_mutex, NULL); @@ -345,9 +347,11 @@ void StreamTcpReassembleFree(char quiet) StreamMsgQueuesDeinit(quiet); if (!quiet) { + SCSpinLock(&stream_reassembly_memuse_spinlock); SCLogInfo("Max memuse of the stream reassembly engine %"PRIu32" (in use" " %"PRIu32")", stream_reassembly_memuse_max, stream_reassembly_memuse); + SCSpinUnlock(&stream_reassembly_memuse_spinlock); } SCSpinDestroy(&stream_reassembly_memuse_spinlock); diff --git a/src/stream-tcp.c b/src/stream-tcp.c index 7df2e301b6..7837182b20 100644 --- a/src/stream-tcp.c +++ b/src/stream-tcp.c @@ -462,9 +462,11 @@ void StreamTcpInitConfig(char quiet) } /* init the memcap and it's lock */ + SCSpinInit(&stream_memuse_spinlock, PTHREAD_PROCESS_PRIVATE); + SCSpinLock(&stream_memuse_spinlock); stream_memuse = 0; stream_memuse_max = 0; - SCSpinInit(&stream_memuse_spinlock, PTHREAD_PROCESS_PRIVATE); + SCSpinUnlock(&stream_memuse_spinlock); ssn_pool = PoolInit(stream_config.max_sessions, stream_config.prealloc_sessions, @@ -499,8 +501,10 @@ void StreamTcpFreeConfig(char quiet) SCLogDebug("ssn_pool_cnt %"PRIu64"", ssn_pool_cnt); if (!quiet) { + SCSpinLock(&stream_memuse_spinlock); SCLogInfo("Max memuse of stream engine %"PRIu32" (in use %"PRIu32")", stream_memuse_max, stream_memuse); + SCSpinUnlock(&stream_memuse_spinlock); } SCMutexDestroy(&ssn_pool_mutex);