All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/38] VFS union mounts - Add MS_FALLTHRU
@ 2010-08-06 22:34 Valerie Aurora
  2010-08-06 22:34 ` [PATCH 01/38] VFS: Comment follow_mount() and friends Valerie Aurora
                   ` (37 more replies)
  0 siblings, 38 replies; 70+ messages in thread
From: Valerie Aurora @ 2010-08-06 22:34 UTC (permalink / raw)
  To: Alexander Viro
  Cc: Miklos Szeredi, Jan Blunck, Christoph Hellwig, linux-kernel,
	linux-fsdevel, Valerie Aurora

Major changes since last version:

 * Separate MS_FALLTHRU instead of piggybacking on MS_WHITEOUT
 * Renumbering of ext2 flags - backwards incompatible
 * Bug fix for > 2 layers
 * Better mount error messages (from Miklos Szeredi)
 * Rebase against 2.6.35

This branch is named "ms_fallthru" and is in the usual git tree:

git://git.kernel.org/pub/scm/linux/kernel/git/val/linux-2.6.git

You will have to update your util-linux-ng and e2fsprogs to get the
new magic numbers for ext2 feature flags and mount options.  You have
to throw away any existing union mount ext2 disk images and build new
ones (all two of you who have them).

Branch "union_mount" of both:

git://git.kernel.org/pub/scm/fs/ext2/val/e2fsprogs.git

git://git.kernel.org/pub/scm/utils/util-linux-ng/val/util-linux-ng.git

-VAL

Felix Fietkau (2):
  whiteout: jffs2 whiteout support
  fallthru: jffs2 fallthru support

Jan Blunck (10):
  VFS: Make lookup_hash() return a struct path
  autofs4: Save autofs trigger's vfsmount in super block info
  whiteout/NFSD: Don't return information about whiteouts to userspace
  whiteout: Add vfs_whiteout() and whiteout inode operation
  whiteout: Set opaque flag if new directory was previously a whiteout
  whiteout: Allow removal of a directory with whiteouts
  whiteout: Split of ext2_append_link() from ext2_add_link()
  whiteout: ext2 whiteout support
  union-mount: Introduce MNT_UNION and MS_UNION flags
  union-mount: Call do_whiteout() on unlink and rmdir in unions

Valerie Aurora (26):
  VFS: Comment follow_mount() and friends
  VFS: Add read-only users count to superblock
  whiteout: tmpfs whiteout support
  fallthru: Basic fallthru definitions
  fallthru: ext2 fallthru support
  fallthru: tmpfs fallthru support
  union-mount: Union mounts documentation
  union-mount: Introduce union_dir structure and basic operations
  union-mount: Free union dirs on removal from dcache
  union-mount: Support for union mounting file systems
  union-mount: Implement union lookup
  union-mount: Copy up directory entries on first readdir()
  VFS: Split inode_permission() and create path_permission()
  VFS: Create user_path_nd() to lookup both parent and target
  union-mount: In-kernel file copyup routines
  union-mount: Implement union-aware access()/faccessat()
  union-mount: Implement union-aware link()
  union-mount: Implement union-aware rename()
  union-mount: Implement union-aware writable open()
  union-mount: Implement union-aware chown()
  union-mount: Implement union-aware truncate()
  union-mount: Implement union-aware chmod()/fchmodat()
  union-mount: Implement union-aware lchown()
  union-mount: Implement union-aware utimensat()
  union-mount: Implement union-aware setxattr()
  union-mount: Implement union-aware lsetxattr()

 Documentation/filesystems/union-mounts.txt |  752 +++++++++++++++++++++++++++
 Documentation/filesystems/vfs.txt          |   16 +-
 fs/Kconfig                                 |   13 +
 fs/Makefile                                |    1 +
 fs/autofs4/autofs_i.h                      |    1 +
 fs/autofs4/init.c                          |   11 +-
 fs/autofs4/root.c                          |    6 +
 fs/compat.c                                |    9 +
 fs/dcache.c                                |   32 ++-
 fs/ext2/dir.c                              |  248 +++++++++-
 fs/ext2/ext2.h                             |    4 +
 fs/ext2/inode.c                            |   11 +-
 fs/ext2/namei.c                            |   85 +++-
 fs/ext2/super.c                            |    7 +
 fs/jffs2/dir.c                             |  104 ++++-
 fs/jffs2/fs.c                              |    4 +
 fs/jffs2/super.c                           |    2 +-
 fs/libfs.c                                 |   21 +-
 fs/namei.c                                 |  754 ++++++++++++++++++++++++----
 fs/namespace.c                             |  289 +++++++++++-
 fs/nfsd/nfs3xdr.c                          |    5 +
 fs/nfsd/nfs4xdr.c                          |    5 +
 fs/nfsd/nfsxdr.c                           |    4 +
 fs/open.c                                  |  116 ++++-
 fs/readdir.c                               |   18 +
 fs/super.c                                 |   24 +
 fs/union.c                                 |  699 ++++++++++++++++++++++++++
 fs/union.h                                 |   80 +++
 fs/utimes.c                                |   14 +-
 fs/xattr.c                                 |   65 ++-
 include/linux/dcache.h                     |   19 +-
 include/linux/ext2_fs.h                    |    8 +
 include/linux/fs.h                         |   26 +
 include/linux/jffs2.h                      |    8 +
 include/linux/mount.h                      |    6 +-
 include/linux/namei.h                      |    2 +
 mm/shmem.c                                 |  193 +++++++-
 37 files changed, 3480 insertions(+), 182 deletions(-)
 create mode 100644 Documentation/filesystems/union-mounts.txt
 create mode 100644 fs/union.c
 create mode 100644 fs/union.h


^ permalink raw reply	[flat|nested] 70+ messages in thread
[parent not found: <eVJmW-3Lf-15@gated-at.bofh.it>]
* [PATCH 00/38] Union mounts - multiple layers and submounts
@ 2010-06-25 19:04 Valerie Aurora
  2010-06-25 19:05 ` [PATCH 14/38] fallthru: ext2 fallthru support Valerie Aurora
  0 siblings, 1 reply; 70+ messages in thread
From: Valerie Aurora @ 2010-06-25 19:04 UTC (permalink / raw)
  To: Alexander Viro
  Cc: Miklos Szeredi, Jan Blunck, Christoph Hellwig, linux-kernel,
	linux-fsdevel, Valerie Aurora

This version of union mounts adds support for more than one read-only
layer and submounts in the read-only layers.  It replaces the clumsy
array of vfsmounts in the topmost superblock with a pointer to the
root of a cloned vfsmount tree of all the read-only mounts to be
unioned.

This branch is named "submounts" and is in the usual git tree:

git://git.kernel.org/pub/scm/linux/kernel/git/val/linux-2.6.git

FYI, I'll be on vacation for the next two weeks and not reading email.

-VAL

Felix Fietkau (2):
  whiteout: jffs2 whiteout support
  fallthru: jffs2 fallthru support

Jan Blunck (11):
  VFS: Make lookup_hash() return a struct path
  autofs4: Save autofs trigger's vfsmount in super block info
  whiteout/NFSD: Don't return information about whiteouts to userspace
  whiteout: Add vfs_whiteout() and whiteout inode operation
  whiteout: Set S_OPAQUE inode flag when creating directories
  whiteout: Allow removal of a directory with whiteouts
  whiteout: tmpfs whiteout support
  whiteout: Split of ext2_append_link() from ext2_add_link()
  whiteout: ext2 whiteout support
  union-mount: Introduce MNT_UNION and MS_UNION flags
  union-mount: Call do_whiteout() on unlink and rmdir in unions

Valerie Aurora (25):
  VFS: Comment follow_mount() and friends
  VFS: Add read-only users count to superblock
  fallthru: Basic fallthru definitions
  fallthru: ext2 fallthru support
  fallthru: tmpfs fallthru support
  union-mount: Union mounts documentation
  union-mount: Introduce union_dir structure and basic operations
  union-mount: Free union dirs on removal from dcache
  union-mount: Support for mounting union mount file systems
  union-mount: Implement union lookup
  union-mount: Copy up directory entries on first readdir()
  VFS: Split inode_permission() and create path_permission()
  VFS: Create user_path_nd() to lookup both parent and target
  union-mount: In-kernel file copyup routines
  union-mount: Implement union-aware access()/faccessat()
  union-mount: Implement union-aware link()
  union-mount: Implement union-aware rename()
  union-mount: Implement union-aware writable open()
  union-mount: Implement union-aware chown()
  union-mount: Implement union-aware truncate()
  union-mount: Implement union-aware chmod()/fchmodat()
  union-mount: Implement union-aware lchown()
  union-mount: Implement union-aware utimensat()
  union-mount: Implement union-aware setxattr()
  union-mount: Implement union-aware lsetxattr()

 Documentation/filesystems/union-mounts.txt |  752 +++++++++++++++++++++++++++
 Documentation/filesystems/vfs.txt          |   16 +-
 fs/Kconfig                                 |   13 +
 fs/Makefile                                |    1 +
 fs/autofs4/autofs_i.h                      |    1 +
 fs/autofs4/init.c                          |   11 +-
 fs/autofs4/root.c                          |    6 +
 fs/compat.c                                |    9 +
 fs/dcache.c                                |   32 ++-
 fs/ext2/dir.c                              |  248 +++++++++-
 fs/ext2/ext2.h                             |    4 +
 fs/ext2/inode.c                            |   11 +-
 fs/ext2/namei.c                            |   89 ++++-
 fs/ext2/super.c                            |    6 +
 fs/jffs2/dir.c                             |  104 ++++-
 fs/jffs2/fs.c                              |    4 +
 fs/jffs2/super.c                           |    2 +-
 fs/libfs.c                                 |   21 +-
 fs/namei.c                                 |  754 ++++++++++++++++++++++++----
 fs/namespace.c                             |  279 ++++++++++-
 fs/nfsd/nfs3xdr.c                          |    5 +
 fs/nfsd/nfs4xdr.c                          |    5 +
 fs/nfsd/nfsxdr.c                           |    4 +
 fs/open.c                                  |  116 ++++-
 fs/readdir.c                               |   18 +
 fs/super.c                                 |   24 +
 fs/union.c                                 |  692 +++++++++++++++++++++++++
 fs/union.h                                 |   80 +++
 fs/utimes.c                                |   14 +-
 fs/xattr.c                                 |   65 ++-
 include/linux/dcache.h                     |   16 +-
 include/linux/ext2_fs.h                    |    5 +
 include/linux/fs.h                         |   23 +
 include/linux/jffs2.h                      |    8 +
 include/linux/mount.h                      |    6 +-
 include/linux/namei.h                      |    2 +
 mm/shmem.c                                 |  195 +++++++-
 37 files changed, 3459 insertions(+), 182 deletions(-)
 create mode 100644 Documentation/filesystems/union-mounts.txt
 create mode 100644 fs/union.c
 create mode 100644 fs/union.h


^ permalink raw reply	[flat|nested] 70+ messages in thread
* [PATCH 00/38] Union mounts - union stack as linked list
@ 2010-06-15 18:39 Valerie Aurora
  2010-06-15 18:39 ` [PATCH 14/38] fallthru: ext2 fallthru support Valerie Aurora
  0 siblings, 1 reply; 70+ messages in thread
From: Valerie Aurora @ 2010-06-15 18:39 UTC (permalink / raw)
  To: Alexander Viro
  Cc: Miklos Szeredi, Jan Blunck, Christoph Hellwig, linux-kernel,
	linux-fsdevel, Valerie Aurora

This version of union mounts implements two major changes requested by
Al Viro:

* Drastically simplify the union stack for a directory.  It is now a
  singly linked list rooted in the dentry of the topmost directory,
  instead of a set of path -> path mappings kept in a hash table.  The
  union hash table lookup routines have gone away, along with most of
  struct union_dir.

* On union mount, clone the underlying read-only mounts and keep them
  in a list hanging off the superblock of the topmost file system.

It also includes many other minor fixups, but those are the big
changes.

Patches are against 2.6.34.  Git version is in branch "linked_list" of:

git://git.kernel.org/pub/scm/linux/kernel/git/val/linux-2.6.git

Next up: Rewrite user_path_nd() and associated code, and implement the
rest of Al Viro's code review comments.

-VAL

Felix Fietkau (2):
  whiteout: jffs2 whiteout support
  fallthru: jffs2 fallthru support

Jan Blunck (11):
  VFS: Make lookup_hash() return a struct path
  autofs4: Save autofs trigger's vfsmount in super block info
  whiteout/NFSD: Don't return information about whiteouts to userspace
  whiteout: Add vfs_whiteout() and whiteout inode operation
  whiteout: Set S_OPAQUE inode flag when creating directories
  whiteout: Allow removal of a directory with whiteouts
  whiteout: tmpfs whiteout support
  whiteout: Split of ext2_append_link() from ext2_add_link()
  whiteout: ext2 whiteout support
  union-mount: Introduce MNT_UNION and MS_UNION flags
  union-mount: Call do_whiteout() on unlink and rmdir in unions

Valerie Aurora (25):
  VFS: Comment follow_mount() and friends
  VFS: Add read-only users count to superblock
  fallthru: Basic fallthru definitions
  fallthru: ext2 fallthru support
  fallthru: tmpfs fallthru support
  union-mount: Union mounts documentation
  union-mount: Introduce union_dir structure and basic operations
  union-mount: Free union dirs on removal from dcache
  union-mount: Support for mounting union mount file systems
  union-mount: Implement union lookup
  union-mount: Copy up directory entries on first readdir()
  VFS: Split inode_permission() and create path_permission()
  VFS: Create user_path_nd() to lookup both parent and target
  union-mount: In-kernel file copyup routines
  union-mount: Implement union-aware access()/faccessat()
  union-mount: Implement union-aware link()
  union-mount: Implement union-aware rename()
  union-mount: Implement union-aware writable open()
  union-mount: Implement union-aware chown()
  union-mount: Implement union-aware truncate()
  union-mount: Implement union-aware chmod()/fchmodat()
  union-mount: Implement union-aware lchown()
  union-mount: Implement union-aware utimensat()
  union-mount: Implement union-aware setxattr()
  union-mount: Implement union-aware lsetxattr()

 Documentation/filesystems/union-mounts.txt |  759 ++++++++++++++++++++++++++++
 Documentation/filesystems/vfs.txt          |   16 +-
 fs/Kconfig                                 |   13 +
 fs/Makefile                                |    1 +
 fs/autofs4/autofs_i.h                      |    1 +
 fs/autofs4/init.c                          |   11 +-
 fs/autofs4/root.c                          |    6 +
 fs/compat.c                                |    9 +
 fs/dcache.c                                |   32 ++-
 fs/ext2/dir.c                              |  248 ++++++++-
 fs/ext2/ext2.h                             |    4 +
 fs/ext2/inode.c                            |   11 +-
 fs/ext2/namei.c                            |   89 ++++-
 fs/ext2/super.c                            |    6 +
 fs/jffs2/dir.c                             |  104 ++++-
 fs/jffs2/fs.c                              |    4 +
 fs/jffs2/super.c                           |    2 +-
 fs/libfs.c                                 |   21 +-
 fs/namei.c                                 |  751 ++++++++++++++++++++++++----
 fs/namespace.c                             |  263 ++++++++++-
 fs/nfsd/nfs3xdr.c                          |    5 +
 fs/nfsd/nfs4xdr.c                          |    5 +
 fs/nfsd/nfsxdr.c                           |    4 +
 fs/open.c                                  |  116 ++++-
 fs/readdir.c                               |   18 +
 fs/super.c                                 |   24 +
 fs/union.c                                 |  693 +++++++++++++++++++++++++
 fs/union.h                                 |   80 +++
 fs/utimes.c                                |   14 +-
 fs/xattr.c                                 |   65 ++-
 include/linux/dcache.h                     |   16 +-
 include/linux/ext2_fs.h                    |    5 +
 include/linux/fs.h                         |   20 +
 include/linux/jffs2.h                      |    8 +
 include/linux/mount.h                      |    6 +-
 include/linux/namei.h                      |    2 +
 mm/shmem.c                                 |  195 +++++++-
 37 files changed, 3445 insertions(+), 182 deletions(-)
 create mode 100644 Documentation/filesystems/union-mounts.txt
 create mode 100644 fs/union.c
 create mode 100644 fs/union.h


^ permalink raw reply	[flat|nested] 70+ messages in thread

end of thread, other threads:[~2010-08-26  9:54 UTC | newest]

Thread overview: 70+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-06 22:34 [PATCH 00/38] VFS union mounts - Add MS_FALLTHRU Valerie Aurora
2010-08-06 22:34 ` [PATCH 01/38] VFS: Comment follow_mount() and friends Valerie Aurora
2010-08-06 22:34 ` [PATCH 02/38] VFS: Make lookup_hash() return a struct path Valerie Aurora
2010-08-06 22:34 ` [PATCH 03/38] VFS: Add read-only users count to superblock Valerie Aurora
2010-08-06 22:34 ` [PATCH 04/38] autofs4: Save autofs trigger's vfsmount in super block info Valerie Aurora
2010-08-06 22:34   ` Valerie Aurora
2010-08-06 22:34 ` [PATCH 05/38] whiteout/NFSD: Don't return information about whiteouts to userspace Valerie Aurora
2010-08-06 23:36   ` J. Bruce Fields
2010-08-06 23:36     ` J. Bruce Fields
2010-08-06 22:34 ` [PATCH 06/38] whiteout: Add vfs_whiteout() and whiteout inode operation Valerie Aurora
2010-08-06 22:34 ` [PATCH 07/38] whiteout: Set opaque flag if new directory was previously a whiteout Valerie Aurora
2010-08-06 22:34 ` [PATCH 08/38] whiteout: Allow removal of a directory with whiteouts Valerie Aurora
2010-08-06 22:34 ` [PATCH 09/38] whiteout: tmpfs whiteout support Valerie Aurora
2010-08-06 22:34   ` Valerie Aurora
2010-08-06 22:34 ` [PATCH 10/38] whiteout: Split of ext2_append_link() from ext2_add_link() Valerie Aurora
2010-08-06 22:34 ` [PATCH 11/38] whiteout: ext2 whiteout support Valerie Aurora
2010-08-06 22:34 ` [PATCH 12/38] whiteout: jffs2 " Valerie Aurora
2010-08-06 22:34   ` Valerie Aurora
2010-08-06 22:34   ` Valerie Aurora
2010-08-06 22:34 ` [PATCH 13/38] fallthru: Basic fallthru definitions Valerie Aurora
2010-08-06 22:35 ` [PATCH 14/38] fallthru: ext2 fallthru support Valerie Aurora
2010-08-07  0:28   ` Andreas Dilger
2010-08-08 16:40     ` Valerie Aurora
2010-08-06 22:35 ` [PATCH 15/38] fallthru: jffs2 " Valerie Aurora
2010-08-06 22:35   ` Valerie Aurora
2010-08-06 22:35   ` Valerie Aurora
2010-08-06 22:35 ` [PATCH 16/38] fallthru: tmpfs " Valerie Aurora
2010-08-06 22:35 ` [PATCH 17/38] union-mount: Union mounts documentation Valerie Aurora
2010-08-06 22:35 ` [PATCH 18/38] union-mount: Introduce MNT_UNION and MS_UNION flags Valerie Aurora
2010-08-06 22:35 ` [PATCH 19/38] union-mount: Introduce union_dir structure and basic operations Valerie Aurora
2010-08-06 22:35 ` [PATCH 20/38] union-mount: Free union dirs on removal from dcache Valerie Aurora
2010-08-06 22:35 ` [PATCH 21/38] union-mount: Support for union mounting file systems Valerie Aurora
2010-08-06 22:35 ` [PATCH 22/38] union-mount: Implement union lookup Valerie Aurora
2010-08-06 22:35 ` [PATCH 23/38] union-mount: Call do_whiteout() on unlink and rmdir in unions Valerie Aurora
2010-08-06 22:35 ` [PATCH 24/38] union-mount: Copy up directory entries on first readdir() Valerie Aurora
2010-08-06 22:35 ` [PATCH 25/38] VFS: Split inode_permission() and create path_permission() Valerie Aurora
2010-08-06 22:35 ` [PATCH 26/38] VFS: Create user_path_nd() to lookup both parent and target Valerie Aurora
2010-08-06 22:35 ` [PATCH 27/38] union-mount: In-kernel file copyup routines Valerie Aurora
2010-08-06 22:35 ` [PATCH 28/38] union-mount: Implement union-aware access()/faccessat() Valerie Aurora
2010-08-06 22:35 ` [PATCH 29/38] union-mount: Implement union-aware link() Valerie Aurora
2010-08-06 22:35 ` [PATCH 30/38] union-mount: Implement union-aware rename() Valerie Aurora
2010-08-06 22:35 ` [PATCH 31/38] union-mount: Implement union-aware writable open() Valerie Aurora
2010-08-06 22:35 ` [PATCH 32/38] union-mount: Implement union-aware chown() Valerie Aurora
2010-08-06 22:35 ` [PATCH 33/38] union-mount: Implement union-aware truncate() Valerie Aurora
2010-08-06 22:35 ` [PATCH 34/38] union-mount: Implement union-aware chmod()/fchmodat() Valerie Aurora
2010-08-06 22:35 ` [PATCH 35/38] union-mount: Implement union-aware lchown() Valerie Aurora
2010-08-06 22:35 ` [PATCH 36/38] union-mount: Implement union-aware utimensat() Valerie Aurora
2010-08-06 22:35 ` [PATCH 37/38] union-mount: Implement union-aware setxattr() Valerie Aurora
2010-08-06 22:35 ` [PATCH 38/38] union-mount: Implement union-aware lsetxattr() Valerie Aurora
     [not found] <eVJmW-3Lf-15@gated-at.bofh.it>
     [not found] ` <eVJmW-3Lf-19@gated-at.bofh.it>
     [not found]   ` <fdNs6-5F1-7@gated-at.bofh.it>
     [not found]     ` <fdVfY-pv-23@gated-at.bofh.it>
     [not found]       ` <fe6Ep-cD-13@gated-at.bofh.it>
     [not found]         ` <fiCPo-73x-17@gated-at.bofh.it>
     [not found]           ` <fiMc1-6ip-7@gated-at.bofh.it>
2010-08-18 23:24             ` [PATCH 14/38] fallthru: ext2 fallthru support Bodo Eggert
2010-08-18 23:24             ` Bodo Eggert
2010-08-18 23:24               ` Bodo Eggert
2010-08-19  2:03               ` J. R. Okajima
2010-08-24 17:21               ` Valerie Aurora
2010-08-26  9:53                 ` Bodo Eggert
  -- strict thread matches above, loose matches on Subject: below --
2010-06-25 19:04 [PATCH 00/38] Union mounts - multiple layers and submounts Valerie Aurora
2010-06-25 19:05 ` [PATCH 14/38] fallthru: ext2 fallthru support Valerie Aurora
2010-06-15 18:39 [PATCH 00/38] Union mounts - union stack as linked list Valerie Aurora
2010-06-15 18:39 ` [PATCH 14/38] fallthru: ext2 fallthru support Valerie Aurora
2010-07-13  4:30   ` Ian Kent
2010-08-04 14:44   ` Miklos Szeredi
2010-08-04 22:48     ` Valerie Aurora
2010-08-05 10:36       ` Miklos Szeredi
2010-08-05 23:30         ` Valerie Aurora
2010-08-06  8:15           ` Miklos Szeredi
2010-08-06 17:16             ` Valerie Aurora
2010-08-06 17:44               ` Miklos Szeredi
2010-08-04 23:04     ` Valerie Aurora
2010-08-05 11:13       ` Miklos Szeredi
2010-08-06 17:12         ` Valerie Aurora
2010-08-17 22:27         ` Valerie Aurora
2010-08-18  8:26           ` Miklos Szeredi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.