From: Mike Yuan Date: Sat, 23 Mar 2024 09:27:46 +0000 (+0800) Subject: core/socket: remove duplicate unit_add_two_dependencies X-Git-Tag: v256-rc1~428^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=23908d841081eb46c3032c595970456288854fe1;p=thirdparty%2Fsystemd.git core/socket: remove duplicate unit_add_two_dependencies --- diff --git a/src/core/service.c b/src/core/service.c index 38fb07d5948..cc6b6e6961c 100644 --- a/src/core/service.c +++ b/src/core/service.c @@ -4722,6 +4722,7 @@ int service_set_socket_fd( assert(s); assert(fd >= 0); + assert(sock); /* This is called by the socket code when instantiating a new service for a stream socket and the socket needs * to be configured. We take ownership of the passed fd on success. */ @@ -4753,9 +4754,10 @@ int service_set_socket_fd( return r; } - r = unit_add_two_dependencies(UNIT(sock), UNIT_BEFORE, UNIT_TRIGGERS, UNIT(s), false, UNIT_DEPENDENCY_IMPLICIT); + r = unit_add_two_dependencies(UNIT(s), UNIT_AFTER, UNIT_TRIGGERED_BY, UNIT(sock), false, UNIT_DEPENDENCY_IMPLICIT); if (r < 0) - return r; + return log_unit_debug_errno(UNIT(s), r, + "Failed to add After=/TriggeredBy= dependencies on socket unit: %m"); s->socket_fd = fd; s->socket_peer = socket_peer_ref(peer); diff --git a/src/core/socket.c b/src/core/socket.c index 48959f729d9..8b3aa887151 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -2353,13 +2353,6 @@ static void socket_enter_running(Socket *s, int cfd_in) { goto fail; } - r = unit_add_two_dependencies(UNIT(s), UNIT_BEFORE, UNIT_TRIGGERS, service, - false, UNIT_DEPENDENCY_IMPLICIT); - if (r < 0) { - log_unit_warning_errno(UNIT(s), r, "Failed to add Before=/Triggers= dependencies on connection unit: %m"); - goto fail; - } - s->n_accepted++; r = service_set_socket_fd(SERVICE(service), cfd, s, p, s->selinux_context_from_net);