Re: [git pull] more vfs bits

From: Sedat Dilek
Date: Sun Feb 22 2015 - 04:32:30 EST


On Sun, Feb 22, 2015 at 9:51 AM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> On Sat, Feb 21, 2015 at 07:16:16PM -0800, Linus Torvalds wrote:
>> On Sat, Feb 21, 2015 at 6:51 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
>> >
>> > Umm... Works for me. Let's do it this way, then:
>> > * rename those guys through the whole series
>> > * leave the "annotate the filesystems" bits to sit in a vfs.git
>> > branch
>> > * slap trylock_super() + bugfixes I'd been doing today
>> > (procfs and debugfs symlink removals racing with follow_link, oopsable;
>> > double-copy in autofs dev_ioctl.c, with length not rechecked after
>> > copying, theoretically oopsable + reasonably likely data leak) on top of queue
>> > * feed it through local tests and send an updated pull request later
>> > tonight.
>>
>> Ok, I guess I can live with that.
>
> Looks like it survived all the local beating so far...
>

How do you test?

I would like to contribute by testing...
By running LTP-lite testsuite and fio v2.2.5.
Maybe, I can also test with unionmount-testsuite the overlayfs part.
Sounds that good to you?

- Sedat -

> Stuff in there: assorted fixes, multilayer overlayfs from Miklos, beginning
> of David's series (long-term goal being to have VFS understand stacking
> relationships, rather than kludging that up in a bunch of places; for now
> it's mostly infrastructure pieces along with some optimizations that could
> be standalone). Pushed, please pull from the usual place -
> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git for-linus
>
> Shortlog:
> Al Viro (10):
> switch ll_lookup_finish_locks() and ll_revalidate_it_finish() to inode
> configfs: configfs_create() init callback is never NULL and it never fails
> configfs: fold create_dir() into its only caller
> configfs_add_file: fold into its sole caller
> don't bother with most of the bad_file_ops methods
> hypfs: switch to read_iter/write_iter
> Documentation/filesystems/Locking: ->get_sb() is long gone
> debugfs: leave freeing a symlink body until inode eviction
> procfs: fix race between symlink removals and traversals
> autofs4 copy_dev_ioctl(): keep the value of ->size we'd used for allocation
>
> Bastien Nocera (1):
> coredump: Fix typo in comment
>
> David Howells (14):
> configfs: Fix potential NULL d_inode dereference
> Infiniband: Fix potential NULL d_inode dereference
> VFS: Introduce inode-getting helpers for layered/unioned fs environments
> VFS: Add a whiteout dentry type
> VFS: Add a fallthrough flag for marking virtual dentries
> VFS: Split DCACHE_FILE_TYPE into regular and special types
> Apparmor: mediated_filesystem() should use dentry->d_sb not inode->i_sb
> Apparmor: Use d_is_positive/negative() rather than testing dentry->d_inode
> TOMOYO: Use d_is_dir() rather than d_inode and S_ISDIR()
> Smack: Use d_is_positive() rather than testing dentry->d_inode
> SELinux: Use d_is_positive() rather than testing dentry->d_inode
> VFS: (Scripted) Convert S_ISLNK/DIR/REG(dentry->d_inode) to d_is_*(dentry)
> Cachefiles: Fix up scripted S_ISDIR/S_ISREG/S_ISLNK conversions
> fanotify: Fix up scripted S_ISDIR/S_ISREG/S_ISLNK conversions
>
> Kinglong Mee (1):
> fs/aio.c: Remove duplicate function name in pr_debug messages
>
> Konstantin Khlebnikov (1):
> trylock_super(): replacement for grab_super_passive()
>
> Miklos Szeredi (16):
> ovl: check whiteout while reading directory
> ovl: make path-type a bitmap
> ovl: dont replace opaque dir
> ovl: add mutli-layer infrastructure
> ovl: helper to iterate layers
> ovl: multi-layer readdir
> ovl: multi-layer lookup
> ovl: check whiteout on lowest layer as well
> ovl: lookup ENAMETOOLONG on lower means ENOENT
> ovl: allow statfs if no upper layer
> ovl: mount: change order of initialization
> ovl: improve mount helpers
> ovl: make upperdir optional
> ovl: support multiple lower layers
> ovl: add testsuite to docs
> ovl: document lower layer ordering
>
> Omar Sandoval (1):
> posix_acl: fix reference leaks in posix_acl_create
>
> Rasmus Villemoes (1):
> autofs4: Wrong format for printing dentry
>
> Seunghun Lee (1):
> ovl: Prevent rw remount when it should be ro mount
>
> hujianyang (5):
> ovl: Cleanup redundant blank lines
> ovl: Use macros to present ovl_xattr
> ovl: Fix kernel panic while mounting overlayfs
> ovl: Fix opaque regression in ovl_lookup
> ovl: discard independent cursor in readdir()
>
> Diffstat:
> Documentation/filesystems/Locking | 2 -
> Documentation/filesystems/overlayfs.txt | 28 +
> arch/s390/hypfs/inode.c | 53 +-
> drivers/infiniband/hw/ipath/ipath_fs.c | 2 +-
> drivers/infiniband/hw/qib/qib_fs.c | 2 +-
> drivers/staging/lustre/lustre/llite/dcache.c | 12 +-
> drivers/staging/lustre/lustre/llite/file.c | 8 +-
> .../staging/lustre/lustre/llite/llite_internal.h | 4 +-
> drivers/staging/lustre/lustre/llite/namei.c | 12 +-
> fs/9p/vfs_inode.c | 2 +-
> fs/aio.c | 6 +-
> fs/autofs4/dev-ioctl.c | 8 +-
> fs/autofs4/expire.c | 2 +-
> fs/autofs4/root.c | 6 +-
> fs/bad_inode.c | 147 ------
> fs/btrfs/ioctl.c | 4 +-
> fs/cachefiles/daemon.c | 4 +-
> fs/cachefiles/interface.c | 4 +-
> fs/cachefiles/namei.c | 16 +-
> fs/cachefiles/rdwr.c | 2 +-
> fs/ceph/dir.c | 2 +-
> fs/ceph/file.c | 2 +-
> fs/coda/dir.c | 2 +-
> fs/configfs/configfs_internal.h | 3 +-
> fs/configfs/dir.c | 72 ++-
> fs/configfs/file.c | 28 +-
> fs/configfs/inode.c | 12 +-
> fs/coredump.c | 2 +-
> fs/dcache.c | 37 +-
> fs/debugfs/inode.c | 36 +-
> fs/ecryptfs/file.c | 2 +-
> fs/ecryptfs/inode.c | 4 +-
> fs/exportfs/expfs.c | 2 +-
> fs/fs-writeback.c | 6 +-
> fs/fuse/dir.c | 2 +-
> fs/gfs2/dir.c | 2 +-
> fs/hfsplus/dir.c | 2 +-
> fs/hppfs/hppfs.c | 4 +-
> fs/internal.h | 2 +-
> fs/jffs2/dir.c | 14 +-
> fs/jffs2/super.c | 2 +-
> fs/libfs.c | 2 +-
> fs/namei.c | 2 +-
> fs/namespace.c | 10 +-
> fs/nfsd/nfs4recover.c | 4 +-
> fs/nfsd/nfsfh.c | 8 +-
> fs/nfsd/vfs.c | 8 +-
> fs/notify/fanotify/fanotify.c | 6 +-
> fs/overlayfs/copy_up.c | 5 +-
> fs/overlayfs/dir.c | 34 +-
> fs/overlayfs/inode.c | 12 +-
> fs/overlayfs/overlayfs.h | 18 +-
> fs/overlayfs/readdir.c | 181 +++----
> fs/overlayfs/super.c | 564 ++++++++++++++-------
> fs/posix_acl.c | 18 +-
> fs/proc/generic.c | 12 -
> fs/proc/inode.c | 21 +
> fs/proc/internal.h | 1 +
> fs/reiserfs/xattr.c | 4 +-
> fs/super.c | 40 +-
> fs/xfs/xfs_ioctl.c | 2 +-
> include/linux/dcache.h | 120 ++++-
> mm/shmem.c | 4 +-
> security/apparmor/include/apparmor.h | 4 +-
> security/apparmor/lsm.c | 20 +-
> security/apparmor/path.c | 2 +-
> security/inode.c | 2 +-
> security/selinux/hooks.c | 8 +-
> security/smack/smack_lsm.c | 4 +-
> security/tomoyo/file.c | 4 +-
> 70 files changed, 924 insertions(+), 758 deletions(-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/