From 11a177d9de8f79a08452f6972b104fe225c75587 Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Thu, 2 Apr 2020 21:36:59 +0200 Subject: [PATCH 1/2] sd-bus: Deprecate priority functions --- man/rules/meson.build | 2 -- man/sd-bus.xml | 2 -- man/sd_bus_message_set_destination.xml | 23 ++--------------------- src/systemd/sd-bus.h | 6 +++--- 4 files changed, 5 insertions(+), 28 deletions(-) diff --git a/man/rules/meson.build b/man/rules/meson.build index 5620ba1e5bf62..9cdfe5d291982 100644 --- a/man/rules/meson.build +++ b/man/rules/meson.build @@ -291,9 +291,7 @@ manpages = [ 'sd_bus_message_get_interface', 'sd_bus_message_get_member', 'sd_bus_message_get_path', - 'sd_bus_message_get_priority', 'sd_bus_message_get_sender', - 'sd_bus_message_set_priority', 'sd_bus_message_set_sender'], ''], ['sd_bus_message_set_expect_reply', diff --git a/man/sd-bus.xml b/man/sd-bus.xml index a5f493b2cee38..4f1d8355d6856 100644 --- a/man/sd-bus.xml +++ b/man/sd-bus.xml @@ -70,7 +70,6 @@ sd_bus_message_dump3, sd_bus_message_get_cookie3, sd_bus_message_get_monotonic_usec3, -sd_bus_message_get_priority3, sd_bus_message_get_sender3, sd_bus_message_get_signature3, sd_bus_message_get_type3, @@ -84,7 +83,6 @@ sd_bus_message_rewind3, sd_bus_message_seal3, sd_bus_message_set_destination3, -sd_bus_message_set_priority3, sd_bus_message_set_sender3, sd_bus_message_set_expect_reply3, sd_bus_message_skip3, diff --git a/man/sd_bus_message_set_destination.xml b/man/sd_bus_message_set_destination.xml index 126778fc3cec8..51da5ff3b89e4 100644 --- a/man/sd_bus_message_set_destination.xml +++ b/man/sd_bus_message_set_destination.xml @@ -19,8 +19,6 @@ sd_bus_message_get_path sd_bus_message_get_interface sd_bus_message_get_member - sd_bus_message_set_priority - sd_bus_message_get_priority sd_bus_message_set_sender sd_bus_message_get_sender @@ -57,18 +55,6 @@ sd_bus_message *message - - int sd_bus_message_set_priority - sd_bus_message *message - int64_t priority - - - - int sd_bus_message_get_priority - sd_bus_message *message - int64_t *priority - - int sd_bus_message_set_sender sd_bus_message *message @@ -100,10 +86,6 @@ sd_bus_message_set_destination3 for more discussion of those values. - sd_bus_message_set_priority() and - sd_bus_message_get_priority() modify and query a message's priority - respectively. sd-bus currently doesn't make use of a message's priority. - sd_bus_message_set_sender() sets the sender service name for the specified bus message object. The specified name must be a valid unique or well-known service name. This function is useful only for messages to send on direct connections as for connections to bus brokers the broker will fill in the destination @@ -139,9 +121,8 @@ -EPERM - For sd_bus_message_set_destination(), - sd_bus_message_set_sender() and - sd_bus_message_set_priority(), the message is already sealed. + For sd_bus_message_set_destination() and + sd_bus_message_set_sender(), the message is already sealed. diff --git a/src/systemd/sd-bus.h b/src/systemd/sd-bus.h index bc58a5fc9c5c3..cd307dbd566e3 100644 --- a/src/systemd/sd-bus.h +++ b/src/systemd/sd-bus.h @@ -204,7 +204,7 @@ int sd_bus_get_fd(sd_bus *bus); int sd_bus_get_events(sd_bus *bus); int sd_bus_get_timeout(sd_bus *bus, uint64_t *timeout_usec); int sd_bus_process(sd_bus *bus, sd_bus_message **r); -int sd_bus_process_priority(sd_bus *bus, int64_t max_priority, sd_bus_message **r); +int sd_bus_process_priority(sd_bus *bus, int64_t max_priority, sd_bus_message **r) _sd_deprecated_; /* deprecated */ int sd_bus_wait(sd_bus *bus, uint64_t timeout_usec); int sd_bus_flush(sd_bus *bus); int sd_bus_enqueue_for_read(sd_bus *bus, sd_bus_message *m); @@ -272,7 +272,7 @@ int sd_bus_message_seal(sd_bus_message *m, uint64_t cookie, uint64_t timeout_use int sd_bus_message_get_type(sd_bus_message *m, uint8_t *type); int sd_bus_message_get_cookie(sd_bus_message *m, uint64_t *cookie); int sd_bus_message_get_reply_cookie(sd_bus_message *m, uint64_t *cookie); -int sd_bus_message_get_priority(sd_bus_message *m, int64_t *priority); +int sd_bus_message_get_priority(sd_bus_message *m, int64_t *priority) _sd_deprecated_; /* deprecated */ int sd_bus_message_get_expect_reply(sd_bus_message *m); int sd_bus_message_get_auto_start(sd_bus_message *m); @@ -306,7 +306,7 @@ int sd_bus_message_set_allow_interactive_authorization(sd_bus_message *m, int b) int sd_bus_message_set_destination(sd_bus_message *m, const char *destination); int sd_bus_message_set_sender(sd_bus_message *m, const char *sender); -int sd_bus_message_set_priority(sd_bus_message *m, int64_t priority); +int sd_bus_message_set_priority(sd_bus_message *m, int64_t priority) _sd_deprecated_; /* deprecated */ int sd_bus_message_append(sd_bus_message *m, const char *types, ...); int sd_bus_message_appendv(sd_bus_message *m, const char *types, va_list ap); From 1e9a7c44a9c20669aabbafc85247de9b063864bc Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Thu, 2 Apr 2020 21:42:32 +0200 Subject: [PATCH 2/2] sd-bus: remove unused priority logic --- src/libsystemd/sd-bus/sd-bus.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c index 5cbd01594c536..78e18e3b94c53 100644 --- a/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c @@ -1833,7 +1833,7 @@ static int dispatch_wqueue(sd_bus *bus) { return ret; } -static int bus_read_message(sd_bus *bus, bool hint_priority, int64_t priority) { +static int bus_read_message(sd_bus *bus) { assert(bus); return bus_socket_read_message(bus); @@ -1860,17 +1860,13 @@ static void rqueue_drop_one(sd_bus *bus, size_t i) { bus->rqueue_size--; } -static int dispatch_rqueue(sd_bus *bus, bool hint_priority, int64_t priority, sd_bus_message **m) { +static int dispatch_rqueue(sd_bus *bus, sd_bus_message **m) { int r, ret = 0; assert(bus); assert(m); assert(IN_SET(bus->state, BUS_RUNNING, BUS_HELLO)); - /* Note that the priority logic is only available on kdbus, - * where the rqueue is unused. We check the rqueue here - * anyway, because it's simple... */ - for (;;) { if (bus->rqueue_size > 0) { /* Dispatch a queued message */ @@ -1880,7 +1876,7 @@ static int dispatch_rqueue(sd_bus *bus, bool hint_priority, int64_t priority, sd } /* Try to read a new message */ - r = bus_read_message(bus, hint_priority, priority); + r = bus_read_message(bus); if (r < 0) return r; if (r == 0) { @@ -2237,7 +2233,7 @@ _public_ int sd_bus_call( i++; } - r = bus_read_message(bus, false, 0); + r = bus_read_message(bus); if (r < 0) { if (ERRNO_IS_DISCONNECT(r)) { bus_enter_closing(bus); @@ -2776,7 +2772,7 @@ static int dispatch_track(sd_bus *bus) { return 1; } -static int process_running(sd_bus *bus, bool hint_priority, int64_t priority, sd_bus_message **ret) { +static int process_running(sd_bus *bus, sd_bus_message **ret) { _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL; int r; @@ -2795,7 +2791,7 @@ static int process_running(sd_bus *bus, bool hint_priority, int64_t priority, sd if (r != 0) goto null_message; - r = dispatch_rqueue(bus, hint_priority, priority, &m); + r = dispatch_rqueue(bus, &m); if (r < 0) return r; if (!m) @@ -2981,7 +2977,7 @@ static int process_closing(sd_bus *bus, sd_bus_message **ret) { return r; } -static int bus_process_internal(sd_bus *bus, bool hint_priority, int64_t priority, sd_bus_message **ret) { +static int bus_process_internal(sd_bus *bus, sd_bus_message **ret) { int r; /* Returns 0 when we didn't do anything. This should cause the @@ -3021,7 +3017,7 @@ static int bus_process_internal(sd_bus *bus, bool hint_priority, int64_t priorit case BUS_RUNNING: case BUS_HELLO: - r = process_running(bus, hint_priority, priority, ret); + r = process_running(bus, ret); if (r >= 0) return r; @@ -3048,11 +3044,11 @@ static int bus_process_internal(sd_bus *bus, bool hint_priority, int64_t priorit } _public_ int sd_bus_process(sd_bus *bus, sd_bus_message **ret) { - return bus_process_internal(bus, false, 0, ret); + return bus_process_internal(bus, ret); } _public_ int sd_bus_process_priority(sd_bus *bus, int64_t priority, sd_bus_message **ret) { - return bus_process_internal(bus, true, priority, ret); + return bus_process_internal(bus, ret); } static int bus_poll(sd_bus *bus, bool need_more, uint64_t timeout_usec) {