mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 19:00:17 +02:00
The FEXMountDaemon no longer uses the inotify interface for refcounting instances of FEX. The inotify interface fails to send close events when an application crashes. Which is either an API oversight or intentional choice. Now to use FEXMountDaemon the FEX process must send the daemon a pipe fd. The FEXMountDaemon then uses the write end of the pipe to determine if the read end of the pipe is still open. It does this using the epoll API and ref counting how many pipes are still active. This is possible since epoll will tell us if pipe status has changed to error. Signalling to the write end that the read end has closed for whatever reason. Now we only use the "lock" file to remove races and tell the new instances of FEX where the rootfs is mounted