DHCP Server Fails When Forking

Jay Foster jay at systech.com
Mon Jan 6 18:42:05 UTC 2020


I am using the ISC DHCP server (dhcpd) version 4.3.6 from a rocko Yocto 
build.  When dhcpd is started without the '-f' or '-d' options (forks to 
the background) it does not work.  DHCP DISCOVER requests are sent, but 
the dhcpd application does not respond.  I can attach strace to the 
dhcpd process and see that dhcpd just sleeps in an futex() call.

If I start dhcpd with either the '-f' or '-d' options so it does not 
fork, then it works properly.

I have run dhcpd (both forking and non forking) using strace to see if I 
could spot any differences.  The only thing I notice is that when 
forking, the parent process terminates (expected) along with 3 other 
child processes/threads.  It looks like these other threads are supposed 
to handle the ISC tasks/messages, but are not cloned by the fork and are 
not present after forking.

For reference, with an older version of ISC DHCP server (4.1.1-P1) on an 
older product, this problem does not occur.

Any ideas where to look?







More information about the dhcp-users mailing list