Control: severity -1 serious
Control: tags -1 + patch

Hi everyone,

I think the effects of this issue are severe enough, that it needs to be
fixed for bullseye. In other words, it should be RC

On Sat, 08 Aug 2020 13:13:44 +0200 =?utf-8?q?Thomas_M=C3=BChlbacher?=
<tmuehlbac...@posteo.net> wrote:
> I noticed that there were already two related bugreports, with Michael
> Biebl providing a solution for the issue:
> 
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=967906
> 
> And to a lesser degree this one, I suppose:
> 
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=968009
> 
> I tried the container setup again with `PathExists=` dropped from
> `resolvconf-pull-resolved.path` and it stops the errors from occurring,
> however I did not verify that this way the service still does what it's
> supposed to.

#967906 and the related upstream bug report
https://github.com/systemd/systemd/issues/16669 have more context.

In short: PathExists in systemd v246 changed its behaviour to actually
match the documentation.
For resolvconf-pull-resolved.service that means, it's continuously
started over and over again.

Afaics, the simplest solution, is to simply drop

PathExists=/run/systemd/resolve/stub-resolv.conf

and instead add a

[Install]
WantedBy=systemd-resolved.service


to resolvconf-pull-resolved.service and also add a
After=systemd-resolved.service

I've attached a prospective patch.

Dan, Dimitri, would welcome your feedback here, since most of the
resolvconf/resolved integration is seemingly coming from you.


Regards,
Michael
diff --git a/debian/resolvconf.resolvconf-pull-resolved.path b/debian/resolvconf.resolvconf-pull-resolved.path
index 9ccd05e..1f1cdf9 100644
--- a/debian/resolvconf.resolvconf-pull-resolved.path
+++ b/debian/resolvconf.resolvconf-pull-resolved.path
@@ -1,6 +1,5 @@
 [Path]
 PathChanged=/run/systemd/resolve/stub-resolv.conf
-PathExists=/run/systemd/resolve/stub-resolv.conf
 
 [Install]
 WantedBy=systemd-resolved.service
diff --git a/debian/resolvconf.resolvconf-pull-resolved.service b/debian/resolvconf.resolvconf-pull-resolved.service
index 109c462..e5d8d25 100644
--- a/debian/resolvconf.resolvconf-pull-resolved.service
+++ b/debian/resolvconf.resolvconf-pull-resolved.service
@@ -1,7 +1,11 @@
 [Unit]
 ConditionPathExists=/run/resolvconf/enable-updates
 ConditionFileIsExecutable=/sbin/resolvconf
+After=systemd-resolved.service
 
 [Service]
 Type=oneshot
 ExecStart=+-/bin/sh -c 'cat /run/systemd/resolve/stub-resolv.conf | grep -v edns0 | /sbin/resolvconf -a systemd-resolved'
+
+[Install]
+WantedBy=systemd-resolved.service

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to