fusefs: improvements to interruptibility
- If a process receives a fatal signal while blocked on a fuse operation, return ASAP without waiting for the operation to complete. But still send the FUSE_INTERRUPT op to the daemon.
- Plug memory leaks from r346339
Interruptibility is now fully functional, but it could be better:
- Operations that haven't been sent to the server yet should be aborted without sending FUSE_INTERRUPT.
- It would be great if write operations could be made restartable. That would require delaying uiomove until the last possible moment, which would be sometime during fuse_device_read.
- It would be nice if we didn't have to guess which EAGAIN responses were for FUSE_INTERRUPT operations.
PR: 236530
Sponsored by: The FreeBSD Foundation