From: Yu Watanabe Date: Wed, 20 Dec 2023 18:46:10 +0000 (+0900) Subject: network: merge two post event sources X-Git-Tag: v256-rc1~1423^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F30553%2Fhead;p=thirdparty%2Fsystemd.git network: merge two post event sources No functional change, just refactoring. --- diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index d812e8c0eef..51f8b0cc749 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -432,6 +432,7 @@ static int manager_connect_rtnl(Manager *m, int fd) { static int manager_post_handler(sd_event_source *s, void *userdata) { Manager *manager = ASSERT_PTR(userdata); + (void) manager_process_requests(manager); (void) manager_clean_all(manager); return 0; } @@ -513,10 +514,6 @@ int manager_setup(Manager *m) { if (r < 0) return r; - r = sd_event_add_post(m->event, NULL, manager_process_requests, m); - if (r < 0) - return r; - r = manager_listen_fds(m, &rtnl_fd); if (r < 0) return r; diff --git a/src/network/networkd-queue.c b/src/network/networkd-queue.c index a88418e28e1..91e874c6fad 100644 --- a/src/network/networkd-queue.c +++ b/src/network/networkd-queue.c @@ -210,10 +210,11 @@ int link_queue_request_full( process, counter, netlink_handler, ret); } -int manager_process_requests(sd_event_source *s, void *userdata) { - Manager *manager = ASSERT_PTR(userdata); +int manager_process_requests(Manager *manager) { int r; + assert(manager); + for (;;) { bool processed = false; Request *req; diff --git a/src/network/networkd-queue.h b/src/network/networkd-queue.h index d6f5de421e2..21fa7d94534 100644 --- a/src/network/networkd-queue.h +++ b/src/network/networkd-queue.h @@ -1,7 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "sd-event.h" #include "sd-netlink.h" #include "alloc-util.h" @@ -136,7 +135,7 @@ static inline int link_queue_request( ret); \ }) -int manager_process_requests(sd_event_source *s, void *userdata); +int manager_process_requests(Manager *manager); int request_call_netlink_async(sd_netlink *nl, sd_netlink_message *m, Request *req); const char* request_type_to_string(RequestType t) _const_;