X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fnotification-thread-events.c;h=1388b3ce34a0f743e3475af910e692502a4592ab;hb=0493c3d933c5bb28a562a3cd50323593c5e8644e;hp=1093784113cd4e2b35cc5093ab3dd7d5b5bc6b69;hpb=5682b2e6462875214549f5b5a1d9eb1d8df0950e;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/notification-thread-events.c b/src/bin/lttng-sessiond/notification-thread-events.c index 109378411..1388b3ce3 100644 --- a/src/bin/lttng-sessiond/notification-thread-events.c +++ b/src/bin/lttng-sessiond/notification-thread-events.c @@ -2125,7 +2125,7 @@ find_tracer_event_source_element(struct notification_thread_state *state, source_element = NULL; end: - return NULL; + return source_element; } static @@ -2153,6 +2153,12 @@ int remove_tracer_event_source_from_pollset( source_element->is_fd_in_poll_set = false; + /* + * Force the notification thread to restart the poll() loop to ensure + * that any events from the removed fd are removed. + */ + state->restart_poll = true; + ret = drain_event_notifier_notification_pipe(state, source_element->fd, source_element->domain); if (ret) { @@ -4421,7 +4427,8 @@ int notification_client_list_send_evaluation( * Notifications resulting from an hidden trigger are * only sent to the session daemon. */ - continue; + DBG("Skipping client as the trigger is hidden and the client is not the session daemon"); + goto skip_client; } if (source_object_creds) {