lkml.org 
[lkml]   [2021]   [Jul]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 067/593] f2fs: Prevent swap file in LFS mode
    Date
    From: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>

    commit d927ccfccb009ede24448d69c08b12e7c8a6979b upstream.

    The kernel writes to swap files on f2fs directly without the assistance
    of the filesystem. This direct write by kernel can be non-sequential
    even when the f2fs is in LFS mode. Such non-sequential write conflicts
    with the LFS semantics. Especially when f2fs is set up on zoned block
    devices, the non-sequential write causes unaligned write command errors.

    To avoid the non-sequential writes to swap files, prevent swap file
    activation when the filesystem is in LFS mode.

    Fixes: 4969c06a0d83 ("f2fs: support swap file w/ DIO")
    Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
    Cc: stable@vger.kernel.org # v5.10+
    Reviewed-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/data.c | 6 ++++++
    1 file changed, 6 insertions(+)

    --- a/fs/f2fs/data.c
    +++ b/fs/f2fs/data.c
    @@ -4112,6 +4112,12 @@ static int f2fs_swap_activate(struct swa
    if (f2fs_readonly(F2FS_I_SB(inode)->sb))
    return -EROFS;

    + if (f2fs_lfs_mode(F2FS_I_SB(inode))) {
    + f2fs_err(F2FS_I_SB(inode),
    + "Swapfile not supported in LFS mode");
    + return -EINVAL;
    + }
    +
    ret = f2fs_convert_inline_inode(inode);
    if (ret)
    return ret;

    \
     
     \ /
      Last update: 2021-07-12 09:09    [W:2.337 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site