bugdavfs2 - Bugs: bug #62871, davfs2 is unstable against daemon...


bug #62871: davfs2 is unstable against daemon kills as in system restart

Submitter:  None
Submitted:  Sat 06 Aug 2022 04:21:40 PM UTC
Category:  None Severity:  3 - Normal
Item Group:  None Status:  None
Privacy:  Public Assigned to:  alix82
Open/Closed:  Open
* Mandatory Fields

Add a New Comment Rich Markup

Sat 06 Aug 2022 04:21:40 PM UTC, original submission:  

mount.davfs does not recover well from a situation where its pid file from a previous incarnation was not cleared, nor does it stably clean up that file on receiving signals, as it would on system shutdown or user session cleanup.

umount.davfs is not required, its only net action is to wait on the daemon process to terminate; by its mere existence it needs to do re-invoke umount -i, apparently introducing escaping problems (should the mount point's name include the ' character).

Suggestions for fixes:
- if the fuse daemon receives a signal, immediately close the fuse device. This is acceptable, as it is leading to I/O errors to any active clients, which is usual behaviour of fuse-based FS (c.f. examples from libfuse)
- after terminating the fuse loop, perform usual cleanup of cache, webdav session and PID file; ignore additional TERM/HUP signals in that phase
- remove umount.davs altogether, accepting the daemon to run after successful unmounts to perform the cleanups mentioned above
- if a PID file is found on startup, check if the PID still exists and ignore the file if not. If the PID exists, wait a few seconds in case that PID is the previous incarnation still performing cleanup before failing the mount.

For implementation of these suggestions, see attached patch build against davfs2 version 1.6.1.



(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

Attached Files
file #53535:  davfs2_stability.patch added by None (36KiB - text/x-patch)


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by alix82 (Updated the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.


    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-09-08 alix82 Assigned toNone alix82
    2022-08-06 None Attached File- Added davfs2_stability.patch, #53535

    Back to the top

    Powered by Savane 3.13-4448.
    Corresponding source code