From: Jérémie Galarneau Date: Sat, 14 Sep 2019 18:25:25 +0000 (-0400) Subject: consumer: fix: possible unaligned access in packed structure X-Git-Tag: v2.12.0-rc1~389 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=ef4b086ef18cd4128c52c4bf58e5ce64d2df0ee6 consumer: fix: possible unaligned access in packed structure Fix the warnings that unaligned pointers can be passed as parameters emitted when sampling buffer statistics. Signed-off-by: Jérémie Galarneau --- diff --git a/src/common/consumer/consumer-timer.c b/src/common/consumer/consumer-timer.c index cfbf44312..7d000c145 100644 --- a/src/common/consumer/consumer-timer.c +++ b/src/common/consumer/consumer-timer.c @@ -721,6 +721,7 @@ void monitor_timer(struct lttng_consumer_channel *channel) sample_positions_cb sample; get_consumed_cb get_consumed; get_produced_cb get_produced; + uint64_t lowest = 0, highest = 0, total_consumed = 0; assert(channel); @@ -744,11 +745,14 @@ void monitor_timer(struct lttng_consumer_channel *channel) abort(); } - ret = sample_channel_positions(channel, &msg.highest, &msg.lowest, - &msg.total_consumed, sample, get_consumed, get_produced); + ret = sample_channel_positions(channel, &highest, &lowest, + &total_consumed, sample, get_consumed, get_produced); if (ret) { return; } + msg.highest = highest; + msg.lowest = lowest; + msg.total_consumed = total_consumed; /* * Writes performed here are assumed to be atomic which is only