2016-10-05 19:52:30

by Miklos Szeredi

[permalink] [raw]
Subject: [GIT PULL] overlayfs update for 4.9

Hi Al,

Please pull from:

git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git overlayfs-viro

This has an assortment of fixes and cleanups for overlayfs.

It also touches the VFS:

- add the vfs_get_link() helper for calling i_op->get_link();
- fix mnt_want_write_file() to freeze protect the underlying sb instead of
overlay sb;
- allow vfs_clone_file_range() to be called by overlayfs.

None of the above should have any effect on filesystems other than overlayfs.

Thanks,
Miklos

---
Amir Goldstein (3):
vfs: allow vfs_clone_file_range() across mount points
vfs: call vfs_clone_file_range() under mnt_want_write()
ovl: use vfs_clone_file_range() for copy up if possible

Miklos Szeredi (8):
ovl: copy_up_xattr(): use strnlen
ovl: lookup: do getxattr with mounter's permission
vfs: mnt_want_write_file() should freeze protect underlying sb
ovl: make directory ino/dev numbers stable
ovl: explain error values when removing acl from workdir
ovl: use generic_readlink
vfs: add vfs_get_link() helper
ovl: use vfs_get_link()

Richard Weinberger (1):
ovl: Fix info leak in ovl_lookup_temp()

Vivek Goyal (1):
ovl: during copy up, switch to mounter's creds early

---
fs/ioctl.c | 5 +++-
fs/namei.c | 25 +++++++++++++++++
fs/namespace.c | 7 +++--
fs/nfsd/vfs.c | 3 +-
fs/open.c | 15 +++++-----
fs/overlayfs/copy_up.c | 75 +++++++++++++++++++-------------------------------
fs/overlayfs/dir.c | 32 +++++++++++++++++++--
fs/overlayfs/inode.c | 44 +++++++----------------------
fs/overlayfs/super.c | 33 ++++++++++++++--------
fs/read_write.c | 13 ++++-----
fs/xattr.c | 13 ++++++---
include/linux/fs.h | 14 ++++++++++
12 files changed, 160 insertions(+), 119 deletions(-)


2016-10-05 20:06:38

by Al Viro

[permalink] [raw]
Subject: Re: [GIT PULL] overlayfs update for 4.9

On Wed, Oct 05, 2016 at 09:52:10PM +0200, Miklos Szeredi wrote:
> Hi Al,
>
> Please pull from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git overlayfs-viro
>
> This has an assortment of fixes and cleanups for overlayfs.
>
> It also touches the VFS:
>
> - add the vfs_get_link() helper for calling i_op->get_link();
> - fix mnt_want_write_file() to freeze protect the underlying sb instead of
> overlay sb;
> - allow vfs_clone_file_range() to be called by overlayfs.

Give me about an hour, OK?

2016-10-05 23:49:32

by Al Viro

[permalink] [raw]
Subject: Re: [GIT PULL] overlayfs update for 4.9

On Wed, Oct 05, 2016 at 09:52:10PM +0200, Miklos Szeredi wrote:
> Hi Al,
>
> Please pull from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git overlayfs-viro
>
> This has an assortment of fixes and cleanups for overlayfs.
>
> It also touches the VFS:
>
> - add the vfs_get_link() helper for calling i_op->get_link();
> - fix mnt_want_write_file() to freeze protect the underlying sb instead of
> overlay sb;
> - allow vfs_clone_file_range() to be called by overlayfs.

Could you explain why e.g. fsetxattr() needs a different treatment in
"vfs: mnt_want_write_file() should freeze protect underlying sb"?

2016-10-06 08:01:40

by Miklos Szeredi

[permalink] [raw]
Subject: Re: [GIT PULL] overlayfs update for 4.9

On Thu, Oct 6, 2016 at 1:49 AM, Al Viro <[email protected]> wrote:
> On Wed, Oct 05, 2016 at 09:52:10PM +0200, Miklos Szeredi wrote:
>> Hi Al,
>>
>> Please pull from:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git overlayfs-viro
>>
>> This has an assortment of fixes and cleanups for overlayfs.
>>
>> It also touches the VFS:
>>
>> - add the vfs_get_link() helper for calling i_op->get_link();
>> - fix mnt_want_write_file() to freeze protect the underlying sb instead of
>> overlay sb;
>> - allow vfs_clone_file_range() to be called by overlayfs.
>
> Could you explain why e.g. fsetxattr() needs a different treatment in
> "vfs: mnt_want_write_file() should freeze protect underlying sb"?

Because setxattr is an i_op, not a f_op, so it's overlayfs that's
going to be called and will do the freeze protect on underlying layer
(not to mention, that it might be a different underlying sb that will
get the freeze protection in the end, due to copy up)

Thanks,
Miklos

2016-10-11 20:07:50

by Miklos Szeredi

[permalink] [raw]
Subject: Re: [GIT PULL] overlayfs update for 4.9

On Thu, Oct 6, 2016 at 10:01 AM, Miklos Szeredi <[email protected]> wrote:
> On Thu, Oct 6, 2016 at 1:49 AM, Al Viro <[email protected]> wrote:
>> On Wed, Oct 05, 2016 at 09:52:10PM +0200, Miklos Szeredi wrote:
>>> Hi Al,
>>>
>>> Please pull from:
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git overlayfs-viro
>>>
>>> This has an assortment of fixes and cleanups for overlayfs.
>>>
>>> It also touches the VFS:
>>>
>>> - add the vfs_get_link() helper for calling i_op->get_link();
>>> - fix mnt_want_write_file() to freeze protect the underlying sb instead of
>>> overlay sb;
>>> - allow vfs_clone_file_range() to be called by overlayfs.
>>
>> Could you explain why e.g. fsetxattr() needs a different treatment in
>> "vfs: mnt_want_write_file() should freeze protect underlying sb"?
>
> Because setxattr is an i_op, not a f_op, so it's overlayfs that's
> going to be called and will do the freeze protect on underlying layer
> (not to mention, that it might be a different underlying sb that will
> get the freeze protection in the end, due to copy up)

Hi Al,

Are you okay with the VFS changes in there? If so could you please
pull and send to Linus? Or I can send the pull request to Linus
directly, whichever you prefer.

Thanks,
Miklos