I have a setup where sometimes a root process will s6-svwait on a
s6-supervise that is running as another UID.

Unless I s6-applyuidgid -u $svscan_uid s6-svwait ..., the svwait never
returns and the pipe it creates just stands there in the event/ folder
until I `sudo rm` it.

If it helps, the stale pipes are mode 700 and root:$svscan_gid are the
owners. Stracing the supervise says opening the ftrig1 pipe fails with
EACCES.

 Heh. That's an interesting corner case that I hadn't thought about.
The cause for this is the weird dance we have to do with fifodirs and
fifo permissions in order to grant the correct filesystem rights to
notifiers and listeners, without allowing everyone to send fake
notifications. It's clearly an awkward mechanism.

I think I have a solution for it, I'll experiment. Thanks for the report.

--
 Laurent

Reply via email to