tags severity important On Mon, 14 Sep 2015 11:11:45 +0200 Patrick Cernko wrote: > > On a system with systemd, dnsmasq and resolvconf installed, the > /etc/resolvconf/update-libc.d/squid3 hook prevents dnsmasq from > starting.
That hints that the dnsmasq startup sequence is being done the wrong way around. Squid and other processes using /etc/resolvconf/update-libc.d/ hooks rely on the listed NS providing working service *before* the hook is called. Because the key activity done during the hook is to re-resolve configuration details using the new NS listings. Start dnsmasq running, *then* update resolv.conf settings. > As far as I can see, the problem is caused by a deadlock of > "systemctl start dnsmasq.service" in conjunction with "systemctl > reload squid3.service". The latter one is finally called by the > /etc/resolvconf/update-libc.d/squid3 hook which is invoked by dnsmasq > on startup. Why is dnsmasq deadlocking at all? it should not be depending on things those hooks do. > > A possible solution might be, to check if systemd is running in the > hook and calling > > systemctl --no-block reload squid3.service We are working on a squid.service upstream and finding all the many, many broken and missing "features" in systemd. Making the squid3 package depend on systemd .service files would be completely wrong for production use. Amos (Squid upstream)