+ ERR("Consumer sample handling error occurred");
+ ret = -1;
+ goto end;
+ }
+end:
+ return ret;
+}
+
+static int handle_event_notification_pipe(int event_source_fd,
+ enum lttng_domain_type domain,
+ uint32_t revents,
+ struct notification_thread_state *state)
+{
+ int ret = 0;
+
+ if (revents & (LPOLLERR | LPOLLHUP | LPOLLRDHUP)) {
+ ret = handle_notification_thread_tracer_event_source_died(
+ state, event_source_fd);
+ if (ret) {
+ ERR("Failed to remove event notification pipe from poll set: fd = %d",
+ event_source_fd);
+ }
+ goto end;
+ }
+
+ if (testpoint(sessiond_handle_notifier_event_pipe)) {
+ ret = 0;
+ goto end;
+ }
+
+ if (caa_unlikely(notifier_consumption_paused)) {
+ DBG("Event notifier notification consumption paused, sleeping...");
+ sleep(1);
+ goto end;
+ }
+
+ ret = handle_notification_thread_event_notification(
+ state, event_source_fd, domain);
+ if (ret) {
+ ERR("Event notification handling error occurred for fd: %d",
+ event_source_fd);