int profiling_output_to_file = 0;
static SC_ATOMIC_DECLARE(uint64_t, samples);
static uint64_t rate = 0;
-int profiling_rules_active = 0;
+static SC_ATOMIC_DECLARE(bool, profiling_rules_active);
/**
* \brief Initialize profiling.
*/
void SCProfilingInit(void)
{
+ SC_ATOMIC_INIT(profiling_rules_active);
SC_ATOMIC_INIT(samples);
intmax_t rate_v = 0;
/* see if we want to profile rules for this packet */
int SCProfileRuleStart(Packet *p)
{
- if (profiling_rules_active != 1) {
+ if (!SC_ATOMIC_GET(profiling_rules_active)) {
return 0;
}
uint64_t sample = SC_ATOMIC_ADD(samples, 1);
int SCProfileRuleStartCollection(void)
{
- profiling_rules_active = 1;
+ SC_ATOMIC_SET(profiling_rules_active, true);
SCReturnInt(TM_ECODE_OK);
}
int SCProfileRuleStopCollection(void)
{
- profiling_rules_active = 0;
+ SC_ATOMIC_SET(profiling_rules_active, false);
SCReturnInt(TM_ECODE_OK);
}