login
Header Space

 
 

[PATCH 06/42] Unionfs: documentation about renaming operations

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <hch@...>, <viro@...>, <akpm@...>
Cc: <linux-kernel@...>, <linux-fsdevel@...>, Erez Zadok <ezk@...>
Date: Sunday, December 9, 2007 - 10:41 pm

Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
---
 Documentation/filesystems/unionfs/rename.txt |   31 ++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/filesystems/unionfs/rename.txt

diff --git a/Documentation/filesystems/unionfs/rename.txt b/Documentation/filesystems/unionfs/rename.txt
new file mode 100644
index 0000000..e20bb82
--- /dev/null
+++ b/Documentation/filesystems/unionfs/rename.txt
@@ -0,0 +1,31 @@
+Rename is a complex beast. The following table shows which rename(2) operations
+should succeed and which should fail.
+
+o: success
+E: error (either unionfs or vfs)
+X: EXDEV
+
+none = file does not exist
+file = file is a file
+dir  = file is a empty directory
+child= file is a non-empty directory
+wh   = file is a directory containing only whiteouts; this makes it logically
+		empty
+
+                      none    file    dir     child   wh
+file                  o       o       E       E       E
+dir                   o       E       o       E       o
+child                 X       E       X       E       X
+wh                    o       E       o       E       o
+
+
+Renaming directories:
+=====================
+
+Whenever a empty (either physically or logically) directory is being renamed,
+the following sequence of events should take place:
+
+1) Remove whiteouts from both source and destination directory
+2) Rename source to destination
+3) Make destination opaque to prevent anything under it from showing up
+
-- 
1.5.2.2

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[UNIONFS] 00/42 Unionfs and related patches review, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 21/42] Unionfs: inode operations, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 30/42] Unionfs: debugging infrastructure, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 20/42] Unionfs: readdir state helpers, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 06/42] Unionfs: documentation about renaming operations, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 13/42] Unionfs: basic file operations, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 36/42] VFS: export drop_pagecache_sb, Erez Zadok, (Sun Dec 9, 10:42 pm)
Re: [PATCH 36/42] VFS: export drop_pagecache_sb, Nick Piggin, (Wed Dec 12, 1:38 am)
Re: [PATCH 36/42] VFS: export drop_pagecache_sb , Erez Zadok, (Thu Dec 13, 11:24 am)
Re: [PATCH 36/42] VFS: export drop_pagecache_sb, Nick Piggin, (Thu Dec 13, 6:47 pm)
[PATCH 11/42] Unionfs: main header file, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 25/42] Unionfs: super_block operations, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 16/42] Unionfs: lower-level lookup routines, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 10/42] Unionfs: fanout header definitions, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 17/42] Unionfs: rename method and helpers, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 34/42] VFS path get/put ops used by Unionfs, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 23/42] Unionfs: address-space operations, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 19/42] Unionfs: readdir helper functions, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 14/42] Unionfs: lower-level copyup routines, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 38/42] VFS: simplified fsstack_copy_attr_all, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 32/42] Unionfs file system magic number, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 37/42] VFS: export release_open_intent symbol, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 33/42] MM: extern for drop_pagecache_sb, Erez Zadok, (Sun Dec 9, 10:42 pm)
Re: [PATCH 33/42] MM: extern for drop_pagecache_sb, Adrian Bunk, (Mon Dec 10, 10:04 am)
Re: [PATCH 33/42] MM: extern for drop_pagecache_sb , Erez Zadok, (Thu Dec 13, 11:05 am)
[PATCH 29/42] Unionfs: miscellaneous helper routines, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 31/42] VFS: fs_stack header cleanups, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 15/42] Unionfs: dentry revalidation, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 22/42] Unionfs: unlink/rmdir operations, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 28/42] Unionfs: async I/O queue operations, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 27/42] Unionfs: async I/O queue headers, Erez Zadok, (Sun Dec 9, 10:42 pm)
[PATCH 09/42] Unionfs: main Makefile, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 08/42] Makefile: hook to compile unionfs, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 04/42] Unionfs: usage documentation for users, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 07/42] Unionfs maintainers, Erez Zadok, (Sun Dec 9, 10:41 pm)
[PATCH 02/42] Unionfs: unionfs documentation index, Erez Zadok, (Sun Dec 9, 10:41 pm)
Re: [PATCH 01/42] Unionfs: filesystems documentation index, Jan Engelhardt, (Mon Dec 10, 10:47 am)
speck-geostationary