diff options
author | Damjan Georgievski <gdamjan@gmail.com> | 2016-01-04 22:04:17 +0100 |
---|---|---|
committer | Damjan Georgievski <gdamjan@gmail.com> | 2016-01-05 01:00:16 +0100 |
commit | 02e286219479ffa70ffeed5203d12e7fd831d9df (patch) | |
tree | f8367e3a0338a3ac5ce10b10fd344de91a69aac2 /src/network | |
parent | d7a2f11bb964da382d6e5c30a15fd11ac74b50d7 (diff) |
networkd: link - do not drop config for critical interfaces
the idea is that interfaces marked as critical are typically used
for NFS root. networkd shouldn't drop that config.
discussion at #780
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/networkd-link.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 9811526c6d..fb09dbded9 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -2039,9 +2039,9 @@ static int link_configure(Link *link) { assert(link->network); assert(link->state == LINK_STATE_PENDING); - /* Drop foreign config, but ignore loopback device. - * We do not want to remove loopback address. */ - if (!(link->flags & IFF_LOOPBACK)) { + /* Drop foreign config, but ignore loopback or critical devices. + * We do not want to remove loopback address or addresses used for root NFS. */ + if (!(link->flags & IFF_LOOPBACK) && !(link->network->dhcp_critical)) { r = link_drop_foreign_config(link); if (r < 0) return r; |