Preconditions/Environment ------------------------- dunfell image with systemd and cups Triggering Action/Cause ----------------------- Attempt to connect to cups daemon twice with sufficient time gap to allow it to exit (or close the daemon in between using systemctl). Expectation ----------- The cups daemon is supposed to auto-start every time. Actual Result ------------- The cups daemon will only auto-start on the first connection attempt. Reproducibility --------------- 100% The gist of it is that when running under systemd, cups needs to be configured with '--with-rundir=/run/cups', as systemd takes an exception to the activation socket being under /var/run and relocates it. This leads to fd duplication in cupsd and an inadvertent closure of the activation socket when the daemon exits due to inactivity, so that the daemon cannot be activated again.
I have sent a fix proposal: https://lists.openembedded.org/g/openembedded-core/topic/patch_cups_set_rundir_to/80803907?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,80803907
Hi tf, Oleksandr, I can not reproduce this failure. And I believe it has been fixed already by commit in master: https://git.openembedded.org/openembedded-core/commit/meta/recipes-extended/cups?id=6c3f56020da7a26c2daea73e39c2f324f1f597db cups: use /run instead /var/run in systemd's unit file /var/run has been deprecated by systemd, so use /run instead, as suggested by systemd. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> I'll ask @steve to cherry-pick it for dunfell. Regards, Kai
Sent cherry pick request for branch dunfell in oe-core maillist.
https://git.openembedded.org/openembedded-core/commit/?h=dunfell&id=7c88d52eaca62237afcda606a3078ec483992213