X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconsumer-timer.h;h=04743abf83a6d9625774953a08db931911df503e;hb=e1b71bdc87cefd070ae082d88f6d4af5f2bcbd62;hp=84061587f04ddd4a06f6234860bd0147a3b62ac4;hpb=331744e34f56a5aec69b05d356d6901e67926acc;p=lttng-tools.git diff --git a/src/common/consumer-timer.h b/src/common/consumer-timer.h index 84061587f..04743abf8 100644 --- a/src/common/consumer-timer.h +++ b/src/common/consumer-timer.h @@ -32,12 +32,14 @@ /* * Handle timer teardown race wrt memory free of private data by consumer * signals are handled by a single thread, which permits a synchronization - * point between handling of each signal. + * point between handling of each signal. Internal lock ensures mutual + * exclusion. */ struct timer_signal_data { pthread_t tid; /* thread id managing signals */ int setup_done; int qs_done; + pthread_mutex_t lock; }; void consumer_timer_switch_start(struct lttng_consumer_channel *channel,