Hello,
The two patches:
[PATCH 1/2] --foreground option added to dlm_controld
[PATCH 2/2] Startup notification by sd_notify()
add startup notification for the systemd service unit. This way startup
of services depending on DLM can be properly serialized.
Currently dlm_controld forks immediately and the parent exits befor the DLM
subsystem is properly initialized. If clvmd is started next, it will fail
with some cryptic error messages (like 'dlm: no local IP address has been
set'). With the startup notification clvmd startup can be delayed until
dlm_controld reports it is ready.
Similar thing could be implemented with forking and no external dependency, –
but that is a bit more complicated, as requires communication between the
parent and child process or moving the initialization code before fork().
sd_notify() could also be used to provide status information during the
start-up phase too, but I am not familiar enough with what is happening there
to provide reasonable status messages.
Greets,
Jacek