X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fconsumer-timer.h;h=04743abf83a6d9625774953a08db931911df503e;hp=84061587f04ddd4a06f6234860bd0147a3b62ac4;hb=2b8f875486548c9d54d62ae465e2fb23c7023d2c;hpb=f2ad556de9fb7e0920938f1e3d4b1fcb0709beb6 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,