lkml.org 
[lkml]   [2021]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 317/340] f2fs: fix out-of-repair __setattr_copy()
    Date
    From: Chao Yu <yuchao0@huawei.com>

    commit 2562515f0ad7342bde6456602c491b64c63fe950 upstream.

    __setattr_copy() was copied from setattr_copy() in fs/attr.c, there is
    two missing patches doesn't cover this inner function, fix it.

    Commit 7fa294c8991c ("userns: Allow chown and setgid preservation")
    Commit 23adbe12ef7d ("fs,userns: Change inode_capable to capable_wrt_inode_uidgid")

    Fixes: fbfa2cc58d53 ("f2fs: add file operations")
    Cc: stable@vger.kernel.org
    Signed-off-by: Chao Yu <yuchao0@huawei.com>
    Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    fs/f2fs/file.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    --- a/fs/f2fs/file.c
    +++ b/fs/f2fs/file.c
    @@ -765,7 +765,8 @@ static void __setattr_copy(struct inode
    if (ia_valid & ATTR_MODE) {
    umode_t mode = attr->ia_mode;

    - if (!in_group_p(inode->i_gid) && !capable(CAP_FSETID))
    + if (!in_group_p(inode->i_gid) &&
    + !capable_wrt_inode_uidgid(inode, CAP_FSETID))
    mode &= ~S_ISGID;
    set_acl_inode(inode, mode);
    }

    \
     
     \ /
      Last update: 2021-03-02 01:11    [W:4.090 / U:0.668 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site