Merged in master and stable-2.11. Thanks, Jérémie
On Wed, 12 Dec 2018 at 17:24, Mathieu Desnoyers <mathieu.desnoy...@efficios.com> wrote: > > The hash table iteration uses an iterator that needs to stay valid for > the next loop. Using that same iterator variable in a nested lookup > in a different hash table leads to segmentation fault. > > Signed-off-by: Mathieu Desnoyers <mathieu.desnoy...@efficios.com> > --- > src/bin/lttng-sessiond/notification-thread-events.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/src/bin/lttng-sessiond/notification-thread-events.c > b/src/bin/lttng-sessiond/notification-thread-events.c > index 9cc91cc4..9d82b831 100644 > --- a/src/bin/lttng-sessiond/notification-thread-events.c > +++ b/src/bin/lttng-sessiond/notification-thread-events.c > @@ -1931,6 +1931,7 @@ int bind_trigger_to_matching_channels(const struct > lttng_trigger *trigger, > channels_ht_node) { > struct lttng_trigger_list_element *trigger_list_element; > struct lttng_channel_trigger_list *trigger_list; > + struct cds_lfht_iter lookup_iter; > > if (!trigger_applies_to_channel(trigger, channel)) { > continue; > @@ -1940,8 +1941,8 @@ int bind_trigger_to_matching_channels(const struct > lttng_trigger *trigger, > hash_channel_key(&channel->key), > match_channel_trigger_list, > &channel->key, > - &iter); > - node = cds_lfht_iter_get_node(&iter); > + &lookup_iter); > + node = cds_lfht_iter_get_node(&lookup_iter); > assert(node); > trigger_list = caa_container_of(node, > struct lttng_channel_trigger_list, > -- > 2.11.0 > -- Jérémie Galarneau EfficiOS Inc. http://www.efficios.com _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev