Checklist/Inotify

From Linux Checkpoint / Restart Wiki
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
== Current Status ==
 
== Current Status ==
  
Any task using inotify will cause sys_checkpoint() to return failure. Using the glibc syscall wrapper this would mean it would return -1 and set errno to EINVAL.
+
Any task using inotify will cause sys_checkpoint() to return failure because the file its fd refers to lacks the .checkpoint file operation. See [[UncheckpointableFilesystems]].
  
 
== Issues, Solutions, Impacts ==
 
== Issues, Solutions, Impacts ==

Revision as of 23:41, 16 November 2009

Contents

Current Status

Any task using inotify will cause sys_checkpoint() to return failure because the file its fd refers to lacks the .checkpoint file operation. See UncheckpointableFilesystems.

Issues, Solutions, Impacts

Summary

Issue Solution(s) Current Impact Solution Impact
Wait descriptors Yes None Ugly (nothing new as far as inotify is concerned -- see existing comments in the code)
Event queue races Unknown None Probably ugly

Details

1. Wait descriptors refer to inodes but mentioning inode numbers in checkpoint images is forbidden.
 1. Use dentry aliases to find a path to store in the checkpoint image
 2. Change policy re: inode numbers in checkpoint images
    * Add a flag passed from userspace indicating whether inodes should be allowed in the checkpoint image.
    * Fail or fallback to dentry alias solution if the flag is missing
    * Return some indication of whether there are inode numbers in the checkpoint?
      * This affects the method used to checkpoint the filesystems.
 3. Ignore inotify, which would likely be ugly, and "do it right" with fanotify instead. (Al might like this idea)
2. Races between filesystem checkpoint and event queue checkpoint.
 * No solutions yet. fanotify may have this issue too.
Personal tools