Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2226004/?format=api
{ "id": 2226004, "url": "http://patchwork.ozlabs.org/api/patches/2226004/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-ext4/patch/20260422021042.4157510-2-yi.zhang@huaweicloud.com/", "project": { "id": 8, "url": "http://patchwork.ozlabs.org/api/projects/8/?format=api", "name": "Linux ext4 filesystem development", "link_name": "linux-ext4", "list_id": "linux-ext4.vger.kernel.org", "list_email": "linux-ext4@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260422021042.4157510-2-yi.zhang@huaweicloud.com>", "list_archive_url": null, "date": "2026-04-22T02:10:21", "name": "[v3,01/22] ext4: simplify size updating in ext4_setattr()", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "fbb853098af3630e67b066aaf3c264093aeb8f2c", "submitter": { "id": 85428, "url": "http://patchwork.ozlabs.org/api/people/85428/?format=api", "name": "Zhang Yi", "email": "yi.zhang@huaweicloud.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-ext4/patch/20260422021042.4157510-2-yi.zhang@huaweicloud.com/mbox/", "series": [ { "id": 500911, "url": "http://patchwork.ozlabs.org/api/series/500911/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-ext4/list/?series=500911", "date": "2026-04-22T02:10:23", "name": "ext4: use iomap for regular file's buffered I/O path", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/500911/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2226004/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2226004/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <SRS0=ii5U=CV=vger.kernel.org=linux-ext4+bounces-15967-patchwork-incoming=ozlabs.org@ozlabs.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-ext4@vger.kernel.org" ], "Delivered-To": [ "patchwork-incoming@legolas.ozlabs.org", "patchwork-incoming@ozlabs.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=ozlabs.org\n (client-ip=150.107.74.76; helo=mail.ozlabs.org;\n envelope-from=srs0=ii5u=cv=vger.kernel.org=linux-ext4+bounces-15967-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)", "gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=\"2600:3c0a:e001:db::12fc:5321\"\n arc.chain=subspace.kernel.org", "gandalf.ozlabs.org;\n dmarc=none (p=none dis=none) header.from=huaweicloud.com", "gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-ext4+bounces-15967-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)", "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=45.249.212.51", "smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=huaweicloud.com", "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=huaweicloud.com" ], "Received": [ "from mail.ozlabs.org (gandalf.ozlabs.org [150.107.74.76])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g0jZ70g6Lz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 22 Apr 2026 12:18:23 +1000 (AEST)", "from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4g0jZ70Bzpz4wKJ\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 22 Apr 2026 12:18:23 +1000 (AEST)", "by gandalf.ozlabs.org (Postfix)\n\tid 4g0jZ706f9z4wJh; Wed, 22 Apr 2026 12:18:23 +1000 (AEST)", "from sea.lore.kernel.org (sea.lore.kernel.org\n [IPv6:2600:3c0a:e001:db::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby gandalf.ozlabs.org (Postfix) with ESMTPS id 4g0jZ15sGZz4wKJ\n\tfor <patchwork-incoming@ozlabs.org>; Wed, 22 Apr 2026 12:18:17 +1000 (AEST)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 8A81C302F24B\n\tfor <patchwork-incoming@ozlabs.org>; Wed, 22 Apr 2026 02:17:03 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 0892C314B6E;\n\tWed, 22 Apr 2026 02:17:01 +0000 (UTC)", "from dggsgout11.his.huawei.com (dggsgout11.his.huawei.com\n [45.249.212.51])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 6ACBA2FFFA4;\n\tWed, 22 Apr 2026 02:16:58 +0000 (UTC)", "from mail.maildlp.com (unknown [172.19.163.170])\n\tby dggsgout11.his.huawei.com (SkyGuard) with ESMTPS id 4g0jWL3M0pzYQtpd;\n\tWed, 22 Apr 2026 10:15:58 +0800 (CST)", "from mail02.huawei.com (unknown [10.116.40.252])\n\tby mail.maildlp.com (Postfix) with ESMTP id A6843405D6;\n\tWed, 22 Apr 2026 10:16:55 +0800 (CST)", "from huaweicloud.com (unknown [10.50.85.155])\n\tby APP3 (Coremail) with SMTP id _Ch0CgB3JL6PL+hpqkgUBQ--.2635S5;\n\tWed, 22 Apr 2026 10:16:55 +0800 (CST)" ], "ARC-Seal": [ "i=2; a=rsa-sha256; d=ozlabs.org; s=201707; t=1776824303; cv=pass;\n\tb=ZTg0ghz4UTm2WdtHL37WgXlHG4v1JN5yZS9tTpzHvyIsFYF8XYSosNIbMJduKdqCv6U0UeQ6gCvMCycSAZZEy6MeO1aThOMWHmLGBjFGkoqlYiKBVpYsYO9kXM9icC1FECBRD8p9zm9DVp5bCOGsWiCXpTYfRYfDc821krAjRtooLLPZfhT/VhdeKtc/aBnnVIZN59SNTke3BobH8IaT/3WQaE69I/+ASfzIhpMRYjYOe0bcabHwPuGZh3W4US60iGGOL8TQj10SOnUAPVkqghWqMMQLfoWi5RKUC+VAV4Uu049nB3p6Pba15lMB0O1adjb9a338+/dQvU0UME1ziA==", "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1776824220; cv=none;\n b=KfJw4GFr3GoDVWr5X7PeKSACa/GtGTaFrVu4TRa6/WzXuLub0p0s9BQAv+LFZVU4Vhm1gS2chf6NNSYb/sZ8+65oIB50ZnNXtP3ivRQpY3R/Re5KOQOR1Y06dcCQkM/RwSP4e2goB5cWNBhIrktiOKGfL3HQJS4KhPta0sY6A9k=" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1776824303; c=relaxed/relaxed;\n\tbh=B0Mjc5dWUo/17ToOLwgO2PBhT557IlCgd3KYeqZk0x8=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=jNidUUYPd40OrlJUCmD3DsEfgD+gKArwVkJcvBI7ZrWyW0Z4256Tpsahe09zOYw4Q747lQbyr4rYjENafgvx0UMrzjLrSt3b+i9CdB6p4r4EfNYejfjvow3sQgOq7OwCdW9XY6BdbYKVju5zKuC6aNkzZ5nioqBmF6Rnv7oMQVAcR/02WMQKHKjw+eUmkgPC5uAZXZ34XuM/ifiQMV0zsOWSQP1bUKv3jsHv3wm9/eA3z227lRP3N2GpI6H0Rpm/rQuQcXoo0BOvZ1gSGA6prmTC2YxvDbzLQSC/1fY4w8thh0JzsaXUNExZELvfgbx/a/gX1h1haIcjJ8h/MDCJOQ==", "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1776824220; c=relaxed/simple;\n\tbh=2GLqOrJzpWznwh/KQhRAwJU+dvoOKIfi+7HjpC9I4vQ=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=SVnBhKAxhuW+KELN/zeDecq4QwHVPIFLgBbdVy+bHfYkadFA1O6suiCFzDzCj4CkhegKR36qgDAdx8Yh3t3Z21hYclZuwicH71UvurtwfqE1LCoCnrAw/qYBTdXVNTXnWjM5Q5HW5ZXcD88O171tjCA+6lZQNCbMcKEoenb7FsY=" ], "ARC-Authentication-Results": [ "i=2; gandalf.ozlabs.org;\n dmarc=none (p=none dis=none) header.from=huaweicloud.com;\n spf=pass (client-ip=2600:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-ext4+bounces-15967-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org", "i=1; smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=huaweicloud.com;\n spf=pass smtp.mailfrom=huaweicloud.com; arc=none smtp.client-ip=45.249.212.51" ], "From": "Zhang Yi <yi.zhang@huaweicloud.com>", "To": "linux-ext4@vger.kernel.org,\n\tlinux-fsdevel@vger.kernel.org", "Cc": "linux-kernel@vger.kernel.org,\n\ttytso@mit.edu,\n\tadilger.kernel@dilger.ca,\n\tlibaokun@linux.alibaba.com,\n\tjack@suse.cz,\n\tojaswin@linux.ibm.com,\n\tritesh.list@gmail.com,\n\tdjwong@kernel.org,\n\thch@infradead.org,\n\tyi.zhang@huawei.com,\n\tyi.zhang@huaweicloud.com,\n\tyizhang089@gmail.com,\n\tyangerkun@huawei.com,\n\tyukuai@fnnas.com", "Subject": "[PATCH v3 01/22] ext4: simplify size updating in ext4_setattr()", "Date": "Wed, 22 Apr 2026 10:10:21 +0800", "Message-ID": "<20260422021042.4157510-2-yi.zhang@huaweicloud.com>", "X-Mailer": "git-send-email 2.52.0", "In-Reply-To": "<20260422021042.4157510-1-yi.zhang@huaweicloud.com>", "References": "<20260422021042.4157510-1-yi.zhang@huaweicloud.com>", "Precedence": "bulk", "X-Mailing-List": "linux-ext4@vger.kernel.org", "List-Id": "<linux-ext4.vger.kernel.org>", "List-Subscribe": "<mailto:linux-ext4+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-ext4+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-CM-TRANSID": "_Ch0CgB3JL6PL+hpqkgUBQ--.2635S5", "X-Coremail-Antispam": "1UD129KBjvJXoW7Aw4rtrW5Xr4DZr1kJr4ruFg_yoW8tryxpF\n\tyakw1vkw10gF1q9rs2gF1UZa40qa1093yUJFWjkw4IqF1DC3ZaqF17tay3uFW8trWDWw4Y\n\tqFWkKr4rJ34UGrJanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2\n\t9KBjDU0xBIdaVrnRJUUUm014x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0\n\trVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_Jr4l82xGYIkIc2\n\tx26xkF7I0E14v26r4j6ryUM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2z4x0\n\tY4vE2Ix0cI8IcVAFwI0_tr0E3s1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Gr1j6F4UJw\n\tA2z4x0Y4vEx4A2jsIE14v26rxl6s0DM28EF7xvwVC2z280aVCY1x0267AKxVW0oVCq3wAS\n\t0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC0VAKzVAqx4xG6I80ewAv7VC0I7IYx2\n\tIY67AKxVWUGVWUXwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r1j6r4UM4x0\n\tY48IcxkI7VAKI48JM4x0x7Aq67IIx4CEVc8vx2IErcIFxwACI402YVCY1x02628vn2kIc2\n\txKxwCY1x0262kKe7AKxVWUtVW8ZwCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE7xkEbVWU\n\tJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E67AF67\n\tkF1VAFwI0_GFv_WrylIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI42IY\n\t6xIIjxv20xvEc7CjxVAFwI0_Gr0_Cr1lIxAIcVCF04k26cxKx2IYs7xG6r1j6r1xMIIF0x\n\tvEx4A2jsIE14v26r1j6r4UMIIF0xvEx4A2jsIEc7CjxVAFwI0_Gr0_Gr1UYxBIdaVFxhVj\n\tvjDU0xZFpf9x0JUfKs8UUUUU=", "X-CM-SenderInfo": "d1lo6xhdqjqx5xdzvxpfor3voofrz/", "X-Spam-Status": "No, score=-1.1 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDMARC_MISSING,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,\n\tSPF_HELO_NONE,SPF_PASS autolearn=disabled version=4.0.1", "X-Spam-Checker-Version": "SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org" }, "content": "From: Zhang Yi <yi.zhang@huawei.com>\n\nThe logic for updating the file size in ext4_setattr() is currently\nsomewhat messy. By directly entering the error-handling path after\nfailing to add an orphan inode, the unnecessary recovery process\ninvolving old_disksize and the file size can be avoided.\n\nSigned-off-by: Zhang Yi <yi.zhang@huawei.com>\n---\n fs/ext4/inode.c | 22 +++++++++-------------\n 1 file changed, 9 insertions(+), 13 deletions(-)", "diff": "diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c\nindex c2c2d6ac7f3d..0751dc55e94f 100644\n--- a/fs/ext4/inode.c\n+++ b/fs/ext4/inode.c\n@@ -5953,7 +5953,6 @@ int ext4_setattr(struct mnt_idmap *idmap, struct dentry *dentry,\n \tif (attr->ia_valid & ATTR_SIZE) {\n \t\thandle_t *handle;\n \t\tloff_t oldsize = inode->i_size;\n-\t\tloff_t old_disksize;\n \t\tint shrink = (attr->ia_size < inode->i_size);\n \n \t\tif (!(ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS))) {\n@@ -6037,6 +6036,8 @@ int ext4_setattr(struct mnt_idmap *idmap, struct dentry *dentry,\n \t\t\tif (ext4_handle_valid(handle) && shrink) {\n \t\t\t\terror = ext4_orphan_add(handle, inode);\n \t\t\t\torphan = 1;\n+\t\t\t\tif (error)\n+\t\t\t\t\tgoto out_handle;\n \t\t\t}\n \n \t\t\tif (shrink)\n@@ -6052,23 +6053,18 @@ int ext4_setattr(struct mnt_idmap *idmap, struct dentry *dentry,\n \t\t\t\t\t(attr->ia_size > 0 ? attr->ia_size - 1 : 0) >>\n \t\t\t\t\tinode->i_sb->s_blocksize_bits);\n \n-\t\t\tdown_write(&EXT4_I(inode)->i_data_sem);\n-\t\t\told_disksize = EXT4_I(inode)->i_disksize;\n-\t\t\tEXT4_I(inode)->i_disksize = attr->ia_size;\n-\n \t\t\t/*\n \t\t\t * We have to update i_size under i_data_sem together\n \t\t\t * with i_disksize to avoid races with writeback code\n-\t\t\t * running ext4_wb_update_i_disksize().\n+\t\t\t * updating disksize in mpage_map_and_submit_extent().\n \t\t\t */\n-\t\t\tif (!error)\n-\t\t\t\ti_size_write(inode, attr->ia_size);\n-\t\t\telse\n-\t\t\t\tEXT4_I(inode)->i_disksize = old_disksize;\n+\t\t\tdown_write(&EXT4_I(inode)->i_data_sem);\n+\t\t\ti_size_write(inode, attr->ia_size);\n+\t\t\tEXT4_I(inode)->i_disksize = attr->ia_size;\n \t\t\tup_write(&EXT4_I(inode)->i_data_sem);\n-\t\t\trc = ext4_mark_inode_dirty(handle, inode);\n-\t\t\tif (!error)\n-\t\t\t\terror = rc;\n+\n+\t\t\terror = ext4_mark_inode_dirty(handle, inode);\n+out_handle:\n \t\t\text4_journal_stop(handle);\n \t\t\tif (error)\n \t\t\t\tgoto out_mmap_sem;\n", "prefixes": [ "v3", "01/22" ] }