From 9021bb9f935c93b516b10c88db2a212a9e3a8140 Mon Sep 17 00:00:00 2001 From: Tom Gundersen Date: Thu, 28 Aug 2014 15:46:29 +0200 Subject: sd-event: name event sources used in libraries This should help in debugging failing event sources. --- src/libsystemd/sd-bus/sd-bus.c | 16 ++++++++++++++++ src/libsystemd/sd-rtnl/sd-rtnl.c | 12 ++++++++++++ 2 files changed, 28 insertions(+) (limited to 'src/libsystemd') diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c index 8caa404227..78e91b9654 100644 --- a/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c @@ -3013,6 +3013,10 @@ static int attach_io_events(sd_bus *bus) { return r; r = sd_event_source_set_priority(bus->input_io_event_source, bus->event_priority); + if (r < 0) + return r; + + r = sd_event_source_set_name(bus->input_io_event_source, "bus-input"); } else r = sd_event_source_set_io_fd(bus->input_io_event_source, bus->input_fd); @@ -3028,6 +3032,10 @@ static int attach_io_events(sd_bus *bus) { return r; r = sd_event_source_set_priority(bus->output_io_event_source, bus->event_priority); + if (r < 0) + return r; + + r = sd_event_source_set_name(bus->input_io_event_source, "bus-output"); } else r = sd_event_source_set_io_fd(bus->output_io_event_source, bus->output_fd); @@ -3080,10 +3088,18 @@ _public_ int sd_bus_attach_event(sd_bus *bus, sd_event *event, int priority) { if (r < 0) goto fail; + r = sd_event_source_set_name(bus->time_event_source, "bus-time"); + if (r < 0) + goto fail; + r = sd_event_add_exit(bus->event, &bus->quit_event_source, quit_callback, bus); if (r < 0) goto fail; + r = sd_event_source_set_name(bus->quit_event_source, "bus-exit"); + if (r < 0) + goto fail; + r = attach_io_events(bus); if (r < 0) goto fail; diff --git a/src/libsystemd/sd-rtnl/sd-rtnl.c b/src/libsystemd/sd-rtnl/sd-rtnl.c index c19bad1bc9..f883f2842c 100644 --- a/src/libsystemd/sd-rtnl/sd-rtnl.c +++ b/src/libsystemd/sd-rtnl/sd-rtnl.c @@ -859,6 +859,10 @@ int sd_rtnl_attach_event(sd_rtnl *rtnl, sd_event *event, int priority) { if (r < 0) goto fail; + r = sd_event_source_set_name(rtnl->io_event_source, "rtnl-receive-message"); + if (r < 0) + goto fail; + r = sd_event_source_set_prepare(rtnl->io_event_source, prepare_callback); if (r < 0) goto fail; @@ -871,10 +875,18 @@ int sd_rtnl_attach_event(sd_rtnl *rtnl, sd_event *event, int priority) { if (r < 0) goto fail; + r = sd_event_source_set_name(rtnl->time_event_source, "rtnl-timer"); + if (r < 0) + goto fail; + r = sd_event_add_exit(rtnl->event, &rtnl->exit_event_source, exit_callback, rtnl); if (r < 0) goto fail; + r = sd_event_source_set_name(rtnl->exit_event_source, "rtnl-exit"); + if (r < 0) + goto fail; + return 0; fail: -- cgit v1.2.3-54-g00ecf