[Bug 1551351] Re: dhclient does not renew leases
Stefan Bader
stefan.bader at canonical.com
Thu Mar 3 14:48:27 UTC 2016
I believe I got a vague feeling about what is going wrong. So the isc
library which now is shared for bind9 and dhcp is compiled (because
bind9 is rather wanted that way) with threads enabled. Before that the
export version of the library was not. So an isc_app which dhclient
creates and runs was more or less a loop handling events. Now this
creates a series of threads.
The problem looks to be that dhclient (and probably dhcpd, too) set up
the isc_app context and then do a fork() (in daemon mode). The man page
of fork() clearly states that the child will be single threaded. So when
dhclient calls dispatch() to run the isc_app this probably only runs a
single control loop more or less waiting for the threads (which do not
run, maybe not even exist anymore) to do the work.
The signal handling might be related to that as well. With threads only
one of them should handle signals and somehow synchronize with the rest.
Maybe the new library is not handling that correctly. Since this does
not work regardless of running as daemon or not. But I have not
understood all the details there.
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to bind9 in Ubuntu.
https://bugs.launchpad.net/bugs/1551351
Title:
dhclient does not renew leases
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bind9/+bug/1551351/+subscriptions
More information about the Ubuntu-server-bugs
mailing list