From nobody Mon Apr 13 13:27:33 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B7C9DC433FE for ; Tue, 15 Nov 2022 06:36:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232270AbiKOGgB (ORCPT ); Tue, 15 Nov 2022 01:36:01 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54398 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232254AbiKOGf6 (ORCPT ); Tue, 15 Nov 2022 01:35:58 -0500 Received: from mail-pf1-x42b.google.com (mail-pf1-x42b.google.com [IPv6:2607:f8b0:4864:20::42b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 615DC1EED8 for ; Mon, 14 Nov 2022 22:35:57 -0800 (PST) Received: by mail-pf1-x42b.google.com with SMTP id 130so13238075pfu.8 for ; Mon, 14 Nov 2022 22:35:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/ddiJyfTyZKuawRH0HdAalthgL1Zu6o7Dm/cACdaVe8=; b=fbkTPJI6AdjhHDOAYjXNCRvWLJeS+4Nq2CAHj74eUDoT58ti3q7omrhHGT6kh9kPW/ XzjFIkVr8Tn8MP9JmIjaP4QwFoVn8SLybhGUCBbshXXfu3QO7dNAH/c5UHbHVRjYDjVk eLWK+INryeHrOewUQ0vbC9CrqVVnZP2C6SkHF21q4rME3D99xtuRIYY6+OcGBFG6b8GE f4UyxTVdg71A+NJ0wDStJ1Y8oc1yZFKannJGbTc++xbcYfN2vrMvs4IPQ4DpIBajUD4J I6GfuPFaY17savOj4LdfTErn8YcC65VAbKJXF/Nq/HpRZzRzlNsaPSeE6kEiHTpRLTlQ Ks6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/ddiJyfTyZKuawRH0HdAalthgL1Zu6o7Dm/cACdaVe8=; b=JAqafPaUQBtWm+WRY1WfGP968VS57K/uv3YNVTaKCx0WlHN01DeegaIM7sZDYYpA7q JoA0ZBzjqrw2GOwytXlRqoQUs21QWABqRETiFqRPTn9Tp5JqE9LAg1vZbM8t3QrpmbeT 66F2luaBnENgoZlCab2YSOJJ2lDyQv/OKVB8fhgn9rsUGeEOgc4arUtsje80RcfjM0ru cbr3xI9ykVk7zU5rL4GCl4wtXiF8trRnsUuHfiUrIlDS8AFskk+G2CZ23UVh4a6KmlSr 8UpTxo5ZXnB7wTnLXsvSUtcTnegL5NwdtSFnDCVCLSYCx4VIDu8QHFf6241bIqeeib8b 3taw== X-Gm-Message-State: ANoB5ploxJWmk6TbW4T4q1U82ze4FM/O+lX192XefD1akGN4cdZ3dYh9 6J/Us8jnL90xyQPr8/QlYeI= X-Google-Smtp-Source: AA0mqf5flZQzQWytBUUJAK3gX47rHhuDS851ql2atv78oKjWIOj8+6BzVhmY9A0Va0F7ogUwfKplqA== X-Received: by 2002:a62:1a10:0:b0:572:6da6:218e with SMTP id a16-20020a621a10000000b005726da6218emr1986865pfa.1.1668494156965; Mon, 14 Nov 2022 22:35:56 -0800 (PST) Received: from VirtualBox.. ([129.227.152.6]) by smtp.gmail.com with ESMTPSA id e4-20020a170902d38400b001822121c45asm8767874pld.28.2022.11.14.22.35.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Nov 2022 22:35:56 -0800 (PST) From: Yuwei Guan X-Google-Original-From: Yuwei Guan To: jaegeuk@kernel.org, chao@kernel.org Cc: linux-f2fs-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org, Yuwei.Guan@zeekrlife.com Subject: [PATCH v2 1/3] f2fs: fix to alloc_mode changed after remount on a small volume device Date: Tue, 15 Nov 2022 14:35:35 +0800 Message-Id: <20221115063537.59023-2-Yuwei.Guan@zeekrlife.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20221115063537.59023-1-Yuwei.Guan@zeekrlife.com> References: <20221115063537.59023-1-Yuwei.Guan@zeekrlife.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The commit 84b89e5d943d8 ("f2fs: add auto tuning for small devices") add tuning for small volume device, now support to tune alloce_mode to 'reuse' if it's small size. But the alloc_mode will change to 'default' when do remount on this small size dievce. This patch fo fix alloc_mode changed when do remount for a small volume device. Signed-off-by: Yuwei Guan Reviewed-by: Chao Yu --- fs/f2fs/super.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index 3834ead04620..17b9e70b8f32 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -2043,7 +2043,11 @@ static void default_options(struct f2fs_sb_info *sbi) F2FS_OPTION(sbi).active_logs =3D NR_CURSEG_PERSIST_TYPE; =20 F2FS_OPTION(sbi).inline_xattr_size =3D DEFAULT_INLINE_XATTR_ADDRS; - F2FS_OPTION(sbi).alloc_mode =3D ALLOC_MODE_DEFAULT; + if (le32_to_cpu(F2FS_RAW_SUPER(sbi)->segment_count_main) <=3D + SMALL_VOLUME_SEGMENTS) + F2FS_OPTION(sbi).alloc_mode =3D ALLOC_MODE_REUSE; + else + F2FS_OPTION(sbi).alloc_mode =3D ALLOC_MODE_DEFAULT; F2FS_OPTION(sbi).fsync_mode =3D FSYNC_MODE_POSIX; F2FS_OPTION(sbi).s_resuid =3D make_kuid(&init_user_ns, F2FS_DEF_RESUID); F2FS_OPTION(sbi).s_resgid =3D make_kgid(&init_user_ns, F2FS_DEF_RESGID); @@ -4060,7 +4064,6 @@ static void f2fs_tuning_parameters(struct f2fs_sb_inf= o *sbi) =20 /* adjust parameters according to the volume size */ if (sm_i->main_segments <=3D SMALL_VOLUME_SEGMENTS) { - F2FS_OPTION(sbi).alloc_mode =3D ALLOC_MODE_REUSE; if (f2fs_block_unit_discard(sbi)) sm_i->dcc_info->discard_granularity =3D 1; sm_i->ipu_policy =3D 1 << F2FS_IPU_FORCE | --=20 2.34.1 From nobody Mon Apr 13 13:27:33 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D8A27C433FE for ; Tue, 15 Nov 2022 06:36:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232292AbiKOGgC (ORCPT ); Tue, 15 Nov 2022 01:36:02 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54426 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232248AbiKOGgB (ORCPT ); Tue, 15 Nov 2022 01:36:01 -0500 Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 870561D670 for ; Mon, 14 Nov 2022 22:36:00 -0800 (PST) Received: by mail-pj1-x102a.google.com with SMTP id k5so12443834pjo.5 for ; Mon, 14 Nov 2022 22:36:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=At0DMj7QmxXhtx0rqE/HVuXuFAjGeJogide/J8J9NtE=; b=NwwCJKF+znEhRh360dhBKRYvY664rqbb3Q6CjoAruwbU0hB6fIx6iN40Hr23MLUIxx akhV7pXA0Lca6e5ZmWhsG+cCqLhXrgIapmOtSMTAx25jIf+N58eF9Vh3hkuHlgH8wTNU tR0YCeOQdmoMxw+rsRd346ey1quUzS/tif0sXPCWUiaTVM82mP2uNeFcginMnz/I3kPJ pGEsCnwk13uc7lRSsWP85Zp9XzMRFnEyC86lv4iwRE03JYmgHsIPjGvlvL2ajafLJXB4 /zgF0XKBkDGOMoZomtMfQrACGtD/nPXqoiwm7sN8dzFI3c1RdPc04zolpw8Sy4bpg7Ay J+3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=At0DMj7QmxXhtx0rqE/HVuXuFAjGeJogide/J8J9NtE=; b=HIcV+dRbzCwYAgB8lfzo6wgUZQfzD9pJZIGD5wVVkwJF2IrCk51oqlEHUhVW9XKkPi qNIENc9Wm4Rk6ZV8s8eJUZ2D2mDL3SR1bLxdLzmhl7r9scKFS+hNHPkjbcYFR7s36UVy o126yqk1B/k8gffO5iCQlnuYIRQq8WXERgz+LnGxhd2XJsXJHsabOoExMTb3NkzmZ8kM xkuPHSu1YGOcaifE7Jq7TTpYyNYBKsPLYOKh7iFuOeSi53qzkW3h2h6r5w1vZigvlzfK TPYgyP4xLdd1QYB5AN+acGNsxK2JmaVn5zxDf/T95xkxNpFg8+t9uYj5wJ5wN2MI+yrq uJxw== X-Gm-Message-State: ANoB5plD6M50kI8AF4AKyZhfM9dEkAGeeoGv6yLKUYuAJ+Dy+k1HE4lg 38fqvgpyt/AdzDmtLXSb3nI= X-Google-Smtp-Source: AA0mqf6INrMbbMhJmIMiuKEwY0jkAMYYg22PKD/IRtv846IQRf7ALvYzhudqHBDl/oQRDcXRxPyAJA== X-Received: by 2002:a17:90a:d517:b0:200:40a2:eaaa with SMTP id t23-20020a17090ad51700b0020040a2eaaamr764941pju.68.1668494160103; Mon, 14 Nov 2022 22:36:00 -0800 (PST) Received: from VirtualBox.. ([129.227.152.6]) by smtp.gmail.com with ESMTPSA id e4-20020a170902d38400b001822121c45asm8767874pld.28.2022.11.14.22.35.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Nov 2022 22:35:59 -0800 (PST) From: Yuwei Guan X-Google-Original-From: Yuwei Guan To: jaegeuk@kernel.org, chao@kernel.org Cc: linux-f2fs-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org, Yuwei.Guan@zeekrlife.com Subject: [PATCH v2 2/3] f2fs: cleanup for 'f2fs_tuning_parameters' function Date: Tue, 15 Nov 2022 14:35:36 +0800 Message-Id: <20221115063537.59023-3-Yuwei.Guan@zeekrlife.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20221115063537.59023-1-Yuwei.Guan@zeekrlife.com> References: <20221115063537.59023-1-Yuwei.Guan@zeekrlife.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" A cleanup patch for 'f2fs_tuning_parameters' function. Signed-off-by: Yuwei Guan Reviewed-by: Chao Yu --- fs/f2fs/super.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index 17b9e70b8f32..3e974c003b77 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -4060,13 +4060,11 @@ static int f2fs_setup_casefold(struct f2fs_sb_info = *sbi) =20 static void f2fs_tuning_parameters(struct f2fs_sb_info *sbi) { - struct f2fs_sm_info *sm_i =3D SM_I(sbi); - /* adjust parameters according to the volume size */ - if (sm_i->main_segments <=3D SMALL_VOLUME_SEGMENTS) { + if (MAIN_SEGS(sbi) <=3D SMALL_VOLUME_SEGMENTS) { if (f2fs_block_unit_discard(sbi)) - sm_i->dcc_info->discard_granularity =3D 1; - sm_i->ipu_policy =3D 1 << F2FS_IPU_FORCE | + SM_I(sbi)->dcc_info->discard_granularity =3D 1; + SM_I(sbi)->ipu_policy =3D 1 << F2FS_IPU_FORCE | 1 << F2FS_IPU_HONOR_OPU_WRITE; } =20 --=20 2.34.1 From nobody Mon Apr 13 13:27:33 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 94A24C4332F for ; Tue, 15 Nov 2022 06:36:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232362AbiKOGgK (ORCPT ); Tue, 15 Nov 2022 01:36:10 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54566 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232334AbiKOGgG (ORCPT ); Tue, 15 Nov 2022 01:36:06 -0500 Received: from mail-pl1-x62a.google.com (mail-pl1-x62a.google.com [IPv6:2607:f8b0:4864:20::62a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B0C051F2E8 for ; Mon, 14 Nov 2022 22:36:03 -0800 (PST) Received: by mail-pl1-x62a.google.com with SMTP id j12so12288227plj.5 for ; Mon, 14 Nov 2022 22:36:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+HKZAEUVQQUBttDmyc7IKUPKjfreDh+ajk8XM2NRY3o=; b=a4yJy1ooSkHn+oYyYqCVoMQVZzD/uU5LFhOK0nPMBaEpYkghqShsP/rETQ1BHs3HXe Mty1rEssYGt5wbQmyhAEQGzaLj3QyYSHjvB8UhQKQ28xgmfxW5X7KydjCIbc6LfRS69H 1mxMokS35vYoggGeNRZvbkKyNsSwiLASJuLqZNTLiwlrYLrySOYaEwJL0r8GsTRu4IvL EBzJSjb5XODMKQHHInsT6rpxccfOeXgs7ViB9j6h0xJ1/N8jd6q3C2lIu04kAx3EIQQ+ Yl2UUgfahLk2gRljblLqXdHpHboy37jImoK2/+B2XV5VvITePgTI0jlyQvwmIUCKHG9E utng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+HKZAEUVQQUBttDmyc7IKUPKjfreDh+ajk8XM2NRY3o=; b=oUCOmML16i9PKVnxWxjfTufSurUHVHJsnmws/BewmWUvT2gn0QFn5laocvHsn2LmIi SSJ4Xbado40mSw3NGY/VR5RaBrR1QBz1eaDWgI5ZxnZT74jCpGGq/JUNoeOiej8F/T6J hMuWW3gFBxOTZ5zkjEGQgmPVbRJDT7aJnbor2s30JCLRrLxFIeGOxewxge3eIGs1GJ65 fHZJSs6E9+SWnEaL2FBt3ma5KGrRtnvGRYTOIRjaUCS2Hcn1rSQZkbFrAeDO/SKltFZl UwS8vckMpoc1Em/fD6of9X4fhyLANLvsuq33lf5B2HjmIRt76uIbrMbMBbpNLRSRhCaR prjg== X-Gm-Message-State: ANoB5plEQd0Q3IFQslzE18zm0ErJv7RCSslV1Z/iVymgx9uwu1pHOeuw IDTNYbHTm8jt+HAiu/GgZKyJ2Nk2xbI= X-Google-Smtp-Source: AA0mqf43JnCfXobNbI1CW7VnWqHCB8eV8NhwkeGxU6gwreo1mX/VPKdstNMos7HR1AZAx69v61zLOw== X-Received: by 2002:a17:90a:6e04:b0:213:22d:b2e2 with SMTP id b4-20020a17090a6e0400b00213022db2e2mr713827pjk.148.1668494163260; Mon, 14 Nov 2022 22:36:03 -0800 (PST) Received: from VirtualBox.. ([129.227.152.6]) by smtp.gmail.com with ESMTPSA id e4-20020a170902d38400b001822121c45asm8767874pld.28.2022.11.14.22.36.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Nov 2022 22:36:02 -0800 (PST) From: Yuwei Guan X-Google-Original-From: Yuwei Guan To: jaegeuk@kernel.org, chao@kernel.org Cc: linux-f2fs-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org, Yuwei.Guan@zeekrlife.com Subject: [PATCH v2 3/3] f2fs: change type for 'sbi->readdir_ra' Date: Tue, 15 Nov 2022 14:35:37 +0800 Message-Id: <20221115063537.59023-4-Yuwei.Guan@zeekrlife.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20221115063537.59023-1-Yuwei.Guan@zeekrlife.com> References: <20221115063537.59023-1-Yuwei.Guan@zeekrlife.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Before this patch, the varibale 'readdir_ra' takes effect if it's equal to '1' or not, so we can change type for it from 'int' to 'bool'. Signed-off-by: Yuwei Guan Reviewed-by: Chao Yu --- fs/f2fs/dir.c | 2 +- fs/f2fs/f2fs.h | 2 +- fs/f2fs/super.c | 2 +- fs/f2fs/sysfs.c | 5 +++++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c index 21960a899b6a..eecbf5d6b002 100644 --- a/fs/f2fs/dir.c +++ b/fs/f2fs/dir.c @@ -1000,7 +1000,7 @@ int f2fs_fill_dentries(struct dir_context *ctx, struc= t f2fs_dentry_ptr *d, struct fscrypt_str de_name =3D FSTR_INIT(NULL, 0); struct f2fs_sb_info *sbi =3D F2FS_I_SB(d->inode); struct blk_plug plug; - bool readdir_ra =3D sbi->readdir_ra =3D=3D 1; + bool readdir_ra =3D sbi->readdir_ra; bool found_valid_dirent =3D false; int err =3D 0; =20 diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index e6355a5683b7..384840216e7f 100644 --- a/fs/f2fs/f2fs.h +++ b/fs/f2fs/f2fs.h @@ -1693,7 +1693,7 @@ struct f2fs_sb_info { unsigned int total_node_count; /* total node block count */ unsigned int total_valid_node_count; /* valid node block count */ int dir_level; /* directory level */ - int readdir_ra; /* readahead inode in readdir */ + bool readdir_ra; /* readahead inode in readdir */ u64 max_io_bytes; /* max io bytes to merge IOs */ =20 block_t user_block_count; /* # of user blocks */ diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index 3e974c003b77..0d1adfdd0603 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -4068,7 +4068,7 @@ static void f2fs_tuning_parameters(struct f2fs_sb_inf= o *sbi) 1 << F2FS_IPU_HONOR_OPU_WRITE; } =20 - sbi->readdir_ra =3D 1; + sbi->readdir_ra =3D true; } =20 static int f2fs_fill_super(struct super_block *sb, void *data, int silent) diff --git a/fs/f2fs/sysfs.c b/fs/f2fs/sysfs.c index df27afd71ef4..53fbbb87dd0f 100644 --- a/fs/f2fs/sysfs.c +++ b/fs/f2fs/sysfs.c @@ -649,6 +649,11 @@ static ssize_t __sbi_store(struct f2fs_attr *a, return count; } =20 + if (!strcmp(a->attr.name, "readdir_ra")) { + sbi->readdir_ra =3D !!t; + return count; + } + *ui =3D (unsigned int)t; =20 return count; --=20 2.34.1