This patchset builds on the work by Donsu Park and Seth Forshee and is reduced to the set of patches that just affect fuse. The non-fuse patches are far enough along we can ignore them except possibly for the question of when does FS_USERNS_MOUNT get set in fuse_fs_type. Fuse with a block device has been left as an exercise for a later time. Since v5 I changed the core of this patchset around as the previous patches were showing signs of bitrot. Some important explanations were missing, some important functionality was missing, and xattr handling was completely absent. Since v6 I have: - Removed the failure case from fuse_get_req_nofail_nopages that I added. - Updated fuse to always to use posix_acl_access_xattr_handler, and posix_acl_default_xattr_handler, by teaching fuse to set ACL_DONT_CACHE when FUSE_POSIX_ACL is not set. Miklos can you take a look and see what you think? I think this much of the fuse changes are ready, and as such I would like to get them in this development cycle if possible. These changes are also available at: git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git userns-fuse-v7 Eric W. Biederman (6): fuse: Remove the buggy retranslation of pids in fuse_dev_do_read fuse: Fail all requests with invalid uids or gids fs/posix_acl: Document that get_acl respects ACL_DONT_CACHE fuse: Cache a NULL acl when FUSE_GETXATTR returns -ENOSYS fuse: Simplfiy the posix acl handling logic. fuse: Support fuse filesystems outside of init_user_ns Seth Forshee (1): fuse: Restrict allow_other to the superblock's namespace or a descendant fs/fuse/acl.c | 10 +++++----- fs/fuse/cuse.c | 7 ++++++- fs/fuse/dev.c | 30 +++++++++++++++++------------- fs/fuse/dir.c | 27 +++++++++++++-------------- fs/fuse/fuse_i.h | 11 ++++++++--- fs/fuse/inode.c | 44 +++++++++++++++++++++++++++++--------------- fs/fuse/xattr.c | 6 +----- fs/posix_acl.c | 7 +++++-- kernel/user_namespace.c | 1 + 9 files changed, 85 insertions(+), 58 deletions(-) Eric