Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp3381879rdb; Sun, 10 Dec 2023 03:36:45 -0800 (PST) X-Google-Smtp-Source: AGHT+IHBgzPsH95wloWIL3xXQNscoLIHMX7eqetn7SvIWLVBhZ2BA6nNRCrb9O01bESQX1974uV1 X-Received: by 2002:a05:6871:a116:b0:1fb:75b:2fdc with SMTP id vs22-20020a056871a11600b001fb075b2fdcmr3735700oab.115.1702208205495; Sun, 10 Dec 2023 03:36:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702208205; cv=none; d=google.com; s=arc-20160816; b=A793Z7Fls5FfmObHTX0DBTp0wqGV/TJ4baSRX5eIXHJO/uKsUTUnNe5cOEFDajx6Mg oNZQNXR3ctMi3uArry/LBAzjKn7GKuSrOrq0DrshuhNq0k9I6aqXR47auY+aRUS5fyZn xJYjZvNOgkeYiw89s42PvPZ90Z3G2gSNuTh5BL6Ru0/jJaQ6DonP3dxwrAtzMPiEqSal x0LFJK6an9fuShxDSiuI7yqPObXYLRuKz0jWTfapfPDv9GKKHiXmlXmpaTzVe8jD5a/H zUM8Fi+3+lRRKfBtPYFvqwwZbwrMdLwemJWj8wGAro9rEUf4Yfg+hJqt0U1KUyeKTeg/ Q+gg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=LoV3aU+OeYj0J0DMe7rQ2hXcaDTfLCZAvSvKZ4YzN/M=; fh=57R/jbvao+bAlCd2JjbYfhdIp+jidOB22zrbEQ4DLvw=; b=oo0pj7tWthQnIkeKWnvQ+oYIXgy57Wco223Rhy59JM/XssGQ9m1BAjenZ+IiRmrS0M H+JZD5eKethzh09E1V/SjQUNtXI8iMJNrPUJrS0sA8MFibVKdcNKbTglnYMXlBUl3uUk vDJoot+qA3d4xil3dEnYQgi9LsagZkc66RNRDDpEtnpRRL2y0PpBBy5HLePSwDfQiuTi +QGjumy4v0TSdm2evdJzBVDY9mAOgxgR4NN6R/jAE/ESiU5Gs92wIP+tXV5Y/BTvvqAu jd0kFjG06EfaYQzXOHJwgU/VL05Jtv/TazZ93PxofXufUlQFHnAqfernDYUd1cfYp38J 87lA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=K6wvItDi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id b5-20020a6567c5000000b005c69a12d683si4242159pgs.776.2023.12.10.03.36.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 10 Dec 2023 03:36:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=K6wvItDi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 25E5B80658E8; Sun, 10 Dec 2023 03:36:29 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232190AbjLJLgF (ORCPT + 99 others); Sun, 10 Dec 2023 06:36:05 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53900 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232032AbjLJLgA (ORCPT ); Sun, 10 Dec 2023 06:36:00 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E541DFE for ; Sun, 10 Dec 2023 03:36:06 -0800 (PST) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A2476C433C7; Sun, 10 Dec 2023 11:36:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1702208166; bh=hIUlpOJ3aDB7nGkcog2qFsHcADMxnRlMDotLaomis/4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=K6wvItDiHuOzned+j4BhIjpFIQoZDWqwoE4wwGaR4Fw+eY5+AkRtDWnwteNFlwMrv +CaTN0Kh7EwMjhsSMWh/CfmCoTSjUstW04Q4ro+besEvfsC0nVcfwpr256ctyDlolw QCKDXMbUs5vv2nMM4qA7zii7GlhNcLsokDcrr8yVYiHm9OLgW6xznggE816B5fwOnb o/8/3pCllvh2sUfJolQ+l0fVepwd1uImEVX8aMmesN5mM8e61tuCJROLZI5Pl1XUrO xOK08NqPz5D2euciBnLvdkzhWYo2cVrDSUTy+0hPQoWwhowAezT3QysEst52Hq92Tn GYBWdA36GuvXw== From: Chao Yu To: jaegeuk@kernel.org Cc: linux-f2fs-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org, Chao Yu , Eric Biggers Subject: [PATCH 4/6] f2fs: don't set FI_PREALLOCATED_ALL for partial write Date: Sun, 10 Dec 2023 19:35:45 +0800 Message-Id: <20231210113547.3412782-4-chao@kernel.org> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231210113547.3412782-1-chao@kernel.org> References: <20231210113547.3412782-1-chao@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Sun, 10 Dec 2023 03:36:29 -0800 (PST) In f2fs_preallocate_blocks(), if it is partial write in 4KB, it's not necessary to call f2fs_map_blocks() and set FI_PREALLOCATED_ALL flag. Cc: Eric Biggers Signed-off-by: Chao Yu --- fs/f2fs/file.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c index 5c2f99ada6be..1a3c29a9a6a0 100644 --- a/fs/f2fs/file.c +++ b/fs/f2fs/file.c @@ -4561,13 +4561,14 @@ static int f2fs_preallocate_blocks(struct kiocb *iocb, struct iov_iter *iter, return ret; } - /* Do not preallocate blocks that will be written partially in 4KB. */ map.m_lblk = F2FS_BLK_ALIGN(pos); map.m_len = F2FS_BYTES_TO_BLK(pos + count); - if (map.m_len > map.m_lblk) - map.m_len -= map.m_lblk; - else - map.m_len = 0; + + /* Do not preallocate blocks that will be written partially in 4KB. */ + if (map.m_len <= map.m_lblk) + return 0; + + map.m_len -= map.m_lblk; map.m_may_create = true; if (dio) { map.m_seg_type = f2fs_rw_hint_to_seg_type(inode->i_write_hint); -- 2.40.1