]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Revert "network: delay to configure address until it is removed on reconfigure"
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 22 Jul 2023 06:10:49 +0000 (15:10 +0900)
committerLuca Boccassi <luca.boccassi@gmail.com>
Sat, 22 Jul 2023 22:03:57 +0000 (23:03 +0100)
This reverts commit 6e8477edd3a988357ad5f5fa6610904d44ec402c.

The commit intended to fix a race reported at #28009. However,
unfortunately, it does not fix the root of the race, and reveals
the race in more simple setups. See reports in #28358.

src/network/networkd-address.c
src/network/networkd-util.h

index 21d08c8f377d3c89584821463a5cae49b8972cce..7fbe23e905a4e150c77d4182262655253a749908 100644 (file)
@@ -1212,9 +1212,6 @@ static bool address_is_ready_to_configure(Link *link, const Address *address) {
         if (!link_is_ready_to_configure(link, false))
                 return false;
 
-        if (address_is_removing(address))
-                return false;
-
         if (!ipv4acd_bound(address))
                 return false;
 
index 8ffe4b5b5be976a9a0e619c62bb3a32cf4b825d2..9c360f55264f2db1ce6d56b6e392a959cbe1a4d0 100644 (file)
@@ -125,10 +125,6 @@ int network_config_state_to_string_alloc(NetworkConfigState s, char **ret);
                                     NETWORK_CONFIG_STATE_REMOVING,      \
                                     NETWORK_CONFIG_STATE_REMOVING);     \
         }                                                               \
-        static inline bool name##_is_removing(const type *t) {          \
-                assert(t);                                              \
-                return FLAGS_SET(t->state, NETWORK_CONFIG_STATE_REMOVING); \
-        }                                                               \
         static inline void name##_enter_removed(type *t) {              \
                 name##_update_state(t,                                  \
                                     NETWORK_CONFIG_STATE_CONFIGURED |   \