{"id":2230336,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2230336/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-ext4/patch/177747215562.4110156.8990534145359592512.stgit@frogsfrogsfrogs/","project":{"id":8,"url":"http://patchwork.ozlabs.org/api/1.1/projects/8/?format=json","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},"msgid":"<177747215562.4110156.8990534145359592512.stgit@frogsfrogsfrogs>","date":"2026-04-29T15:01:13","name":"[10/10] fuse4fs: increase attribute timeout in iomap mode","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"2a5aa8bc0e4ff391699eea66ce2b265da2c0b0ea","submitter":{"id":77032,"url":"http://patchwork.ozlabs.org/api/1.1/people/77032/?format=json","name":"Darrick J. Wong","email":"djwong@kernel.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-ext4/patch/177747215562.4110156.8990534145359592512.stgit@frogsfrogsfrogs/mbox/","series":[{"id":502091,"url":"http://patchwork.ozlabs.org/api/1.1/series/502091/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-ext4/list/?series=502091","date":"2026-04-29T14:59:24","name":"[01/10] fuse2fs: add strictatime/lazytime mount options","version":1,"mbox":"http://patchwork.ozlabs.org/series/502091/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2230336/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2230336/checks/","tags":{},"headers":{"Return-Path":"\n <SRS0=Qtri=C4=vger.kernel.org=linux-ext4+bounces-16222-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\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=ciHKo6Vw;\n\tdkim-atps=neutral","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=qtri=c4=vger.kernel.org=linux-ext4+bounces-16222-patchwork-incoming=ozlabs.org@ozlabs.org;\n receiver=patchwork.ozlabs.org)","gandalf.ozlabs.org;\n arc=pass smtp.remote-ip=\"2600:3c04:e001:36c::12fc:5321\"\n arc.chain=subspace.kernel.org","gandalf.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org","gandalf.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=ciHKo6Vw;\n\tdkim-atps=neutral","gandalf.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-ext4+bounces-16222-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"ciHKo6Vw\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"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 4g5LH55PqPz1xqf\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 30 Apr 2026 01:06:25 +1000 (AEST)","from mail.ozlabs.org (mail.ozlabs.org [IPv6:2404:9400:2221:ea00::3])\n\tby gandalf.ozlabs.org (Postfix) with ESMTP id 4g5LH54rrNz4wM1\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 30 Apr 2026 01:06:25 +1000 (AEST)","by gandalf.ozlabs.org (Postfix)\n\tid 4g5LH54m5Tz4wQg; Thu, 30 Apr 2026 01:06:25 +1000 (AEST)","from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::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 4g5LH21Ymmz4wM1\n\tfor <patchwork-incoming@ozlabs.org>; Thu, 30 Apr 2026 01:06:22 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 8C5A23075F34\n\tfor <patchwork-incoming@ozlabs.org>; Wed, 29 Apr 2026 15:01:27 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id D692A373BE4;\n\tWed, 29 Apr 2026 15:01:15 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\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 AF6AA355F36;\n\tWed, 29 Apr 2026 15:01:14 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id CD86DC19425;\n\tWed, 29 Apr 2026 15:01:13 +0000 (UTC)"],"ARC-Seal":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707; t=1777475185; cv=pass;\n\tb=PNssFHVpTRvq1swMALLAldg9/2VIUidWN/Pm8LHmntr0nD9AqEQINo9DEIgZ0PRvD3I7vkaOLE82NdxHGqLXrAYXohTds/E6NIhAejKbJlD0n3mjLcfVXCo817qaGP9MilUIvRIgFnwRU3Q1cddoQFDXK2UG7O5Cf6SX2iPvRcFuuwYiO/0Zya4OrITvBIuIxH3KsyIGpPsK27M7L+zLZr9h8Tri4PGV3E+OmZImcjv5XIG1dlWdWzCCcinx9he4fXRyf+GDSYCghlzIBaJKR7vxeug3K3OeBZxmcIJg2E19lzClShmGdUXWBKkfLJihiilKgRjYCCFBPpX+1o9Ghw==","i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1777474874; cv=none;\n b=sPnz/8VMrZNO//Wao3twQoLKGI+QkMlT/IuGOmzKtOurVyNhaoqIE6YKKX5+zz0Zy3s3HCTbAijpSxvqOlZtdVFOs0Q2pVGBi1EeN5USOOc3NjGn1VfdxtP30E6EZBrKooFT4pbpOx6nC01PQPnmgHZhtN6uemnPzWaF8xVfLKY="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=ozlabs.org; s=201707;\n\tt=1777475185; c=relaxed/relaxed;\n\tbh=GYEcfUim4st7mJ0NVja4lnGcFFUlHoHmhhi0YnGMST0=;\n\th=Date:Subject:From:To:Cc:Message-ID:In-Reply-To:References:\n\t MIME-Version:Content-Type;\n b=IDKEAhIM/B7UykWPR3f0dBr+835MK8gBnGCL1pjfbPBxU+LijA/I/RTSCzIhaZpXkWatKYpvIhcycVXC707uVpQNLdNL6rjzF3Y4kVWpZCkacse15o+4f0BsQ6VZhtKTq4M1G1l+5ydec7ZB6GuUIIuW3l6+KTMjG1H1fjsuG8AnFc3enILu0UoJ56vGJEzw6lVOpTQcYePyYQBGGGkOQwhFV0JjkxNrXSZMdMeSoAsYS+b40yQxHApzcrlolX6JhJXamHcx32hAG6gbr1wbca2xbPv/0I0An40ZaYGRHXobJQje+yXJgB6PYtCTqaqlm4cETvGoJ65VICrMQFMlXg==","i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1777474874; c=relaxed/simple;\n\tbh=Cvt3s9nv0WmmjasPQjtoyo7FZdZ46hpRXMa3yGH9jCg=;\n\th=Date:Subject:From:To:Cc:Message-ID:In-Reply-To:References:\n\t MIME-Version:Content-Type;\n b=gXZbqj/0sduKLHeigNOdL/BV4Y453zFn5i9cUCYc7x5GR2mVGJlTPzAeL5kLXI0sNFtLDB5f3ZOoreA7h8AT58dqqRVLf4Frr6M6m0e7NsWMuvqKEwkjTACrwPI9C4Rr1B4ycDT8Y5JoReH1y710xGyhed7K5sMatPXtPX+LxNM="],"ARC-Authentication-Results":["i=2; gandalf.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=kernel.org;\n dkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=ciHKo6Vw; dkim-atps=neutral;\n spf=pass (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-ext4+bounces-16222-patchwork-incoming=ozlabs.org@vger.kernel.org;\n receiver=ozlabs.org) smtp.mailfrom=vger.kernel.org","i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=ciHKo6Vw; arc=none smtp.client-ip=10.30.226.201"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1777474873;\n\tbh=Cvt3s9nv0WmmjasPQjtoyo7FZdZ46hpRXMa3yGH9jCg=;\n\th=Date:Subject:From:To:Cc:In-Reply-To:References:From;\n\tb=ciHKo6VwGHfaHCl79cyzD4OCPN2h0WpgeLAPXB3U3gpT+N2NEkkOno4nLs0txjvU+\n\t jDUOlzTV7LXARqmuT7jCdOydD8k46gf1crUO709vlIFcFSYI+7x/wrq0beWA1bSJcr\n\t iM3IhtsgArqrbzKICp8W716RkmksqfGrLkYon+ZvUQE/lXbwvapBsz+llo7mMPaQls\n\t UVrgm+XXcWkSyt59qg1BW+OoJsrcslECX2rm3aYj1yoTIJ3JtfFMXw6oy/GUJ6kglh\n\t LERtGmHx6oEYcMHEHYhiqu4bcnAeklgMJS6F73aIptSslJV2tbfWie/E4PudvAFFRL\n\t jVXHdDDwHpVBg==","Date":"Wed, 29 Apr 2026 08:01:13 -0700","Subject":"[PATCH 10/10] fuse4fs: increase attribute timeout in iomap mode","From":"\"Darrick J. Wong\" <djwong@kernel.org>","To":"tytso@mit.edu","Cc":"bernd@bsbernd.com, miklos@szeredi.hu, linux-ext4@vger.kernel.org,\n neal@gompa.dev, linux-fsdevel@vger.kernel.org, fuse-devel@lists.linux.dev,\n joannelkoong@gmail.com","Message-ID":"<177747215562.4110156.8990534145359592512.stgit@frogsfrogsfrogs>","In-Reply-To":"<177747215344.4110156.17216553139316774040.stgit@frogsfrogsfrogs>","References":"<177747215344.4110156.17216553139316774040.stgit@frogsfrogsfrogs>","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-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","X-Spam-Status":"No, score=-1.2 required=5.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DMARC_PASS,\n\tMAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=disabled\n\tversion=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on gandalf.ozlabs.org"},"content":"From: Darrick J. Wong <djwong@kernel.org>\n\nIn iomap mode, we trust the kernel to cache file attributes, because it\nis critical to keep all of the file IO permissions checking in the\nkernel as part of keeping all the file IO paths in the kernel.\nTherefore, increase the attribute timeout to 30 seconds to reduce the\nnumber of upcalls even further.\n\nSigned-off-by: \"Darrick J. Wong\" <djwong@kernel.org>\n---\n fuse4fs/fuse4fs.c |   15 ++++++++++++---\n 1 file changed, 12 insertions(+), 3 deletions(-)","diff":"diff --git a/fuse4fs/fuse4fs.c b/fuse4fs/fuse4fs.c\nindex b4105333f4fe22..9f7fe365ccdf87 100644\n--- a/fuse4fs/fuse4fs.c\n+++ b/fuse4fs/fuse4fs.c\n@@ -131,7 +131,8 @@\n #endif\n #endif /* !defined(ENODATA) */\n \n-#define FUSE4FS_ATTR_TIMEOUT\t(0.0)\n+#define FUSE4FS_IOMAP_ATTR_TIMEOUT\t(0.0)\n+#define FUSE4FS_ATTR_TIMEOUT\t\t(30.0)\n \n #ifndef O_DIRECT\n # define O_DIRECT\t(0)\n@@ -2437,8 +2438,14 @@ static int fuse4fs_stat_inode(struct fuse4fs *ff, ext2_ino_t ino,\n \n \tfuse4fs_ino_to_fuse(ff, &entry->ino, ino);\n \tentry->generation = inodep->i_generation;\n-\tentry->attr_timeout = FUSE4FS_ATTR_TIMEOUT;\n-\tentry->entry_timeout = FUSE4FS_ATTR_TIMEOUT;\n+\n+\tif (fuse4fs_iomap_enabled(ff)) {\n+\t\tentry->attr_timeout = FUSE4FS_IOMAP_ATTR_TIMEOUT;\n+\t\tentry->entry_timeout = FUSE4FS_IOMAP_ATTR_TIMEOUT;\n+\t} else {\n+\t\tentry->attr_timeout = FUSE4FS_ATTR_TIMEOUT;\n+\t\tentry->entry_timeout = FUSE4FS_ATTR_TIMEOUT;\n+\t}\n \n \tfstat->iflags = 0;\n \n@@ -2671,6 +2678,8 @@ static void op_statx(fuse_req_t req, fuse_ino_t fino, int flags, int mask,\n \tfuse4fs_finish(ff, ret);\n \tif (ret)\n \t\tfuse_reply_err(req, -ret);\n+\telse if (fuse4fs_iomap_enabled(ff))\n+\t\tfuse_reply_statx(req, 0, &stx, FUSE4FS_IOMAP_ATTR_TIMEOUT);\n \telse\n \t\tfuse_reply_statx(req, 0, &stx, FUSE4FS_ATTR_TIMEOUT);\n }\n","prefixes":["10/10"]}