From: Joanne Koong <joannelkoong@gmail.com>
To: brauner@kernel.org
Cc: willy@infradead.org, hch@lst.de, djwong@kernel.org,
miklos@szeredi.hu, linux-fsdevel@vger.kernel.org,
fuse-devel@lists.linux.dev
Subject: [PATCH v2 2/2] fuse: use iomap helper to mark folio uptodate
Date: Wed, 24 Jun 2026 14:29:25 -0700 [thread overview]
Message-ID: <20260624212925.1668662-3-joannelkoong@gmail.com> (raw)
In-Reply-To: <20260624212925.1668662-1-joannelkoong@gmail.com>
When fuse enables large folios, a large folio will be backed by
iomap_folio_state that keeps track of uptodate and dirty state in an
internal bitmap.
Fuse writethrough and notify store paths currently set folio uptodate
state with folio_mark_uptodate(), which touches only the folio-level
flag, but on an iomap-backed folio, that leaves the uptodate bitmap out
of sync.
Use the iomap_folio_mark_uptodate() helper to update both the folio
uptodate state and the iomap uptodate bitmap.
Signed-off-by: Joanne Koong <joannelkoong@gmail.com>
---
fs/fuse/file.c | 2 +-
fs/fuse/notify.c | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index e052a0d44dee..26f27e113e9c 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -1335,7 +1335,7 @@ static ssize_t fuse_fill_write_pages(struct fuse_io_args *ia,
/* If we copied full folio, mark it uptodate */
if (tmp == folio_size(folio))
- folio_mark_uptodate(folio);
+ iomap_folio_mark_uptodate(folio);
if (folio_test_uptodate(folio)) {
folio_unlock(folio);
diff --git a/fs/fuse/notify.c b/fs/fuse/notify.c
index 29578104ae6c..1ba763705d91 100644
--- a/fs/fuse/notify.c
+++ b/fs/fuse/notify.c
@@ -2,6 +2,8 @@
#include "dev.h"
#include "fuse_i.h"
+
+#include <linux/iomap.h>
#include <linux/pagemap.h>
static int fuse_notify_poll(struct fuse_conn *fc, unsigned int size,
@@ -192,7 +194,7 @@ static int fuse_notify_store(struct fuse_conn *fc, unsigned int size,
if (!folio_test_uptodate(folio) && !err && folio_offset == 0 &&
(nr_bytes == folio_size(folio) || file_size == end)) {
folio_zero_segment(folio, nr_bytes, folio_size(folio));
- folio_mark_uptodate(folio);
+ iomap_folio_mark_uptodate(folio);
}
folio_unlock(folio);
folio_put(folio);
--
2.52.0
next prev parent reply other threads:[~2026-06-24 21:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-24 21:29 [PATCH v2 0/2] iomap: add helper to keep uptodate bitmap in sync Joanne Koong
2026-06-24 21:29 ` [PATCH v2 1/2] iomap: add helper to mark folio uptodate Joanne Koong
2026-06-25 11:50 ` Christoph Hellwig
2026-06-25 18:55 ` Darrick J. Wong
2026-06-24 21:29 ` Joanne Koong [this message]
2026-06-24 22:18 ` [PATCH v2 2/2] fuse: use iomap " Darrick J. Wong
2026-06-25 0:35 ` Joanne Koong
2026-06-25 18:57 ` Darrick J. Wong
2026-06-25 7:46 ` [PATCH v2 0/2] iomap: add helper to keep uptodate bitmap in sync Christian Brauner
2026-06-25 21:54 ` Joanne Koong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260624212925.1668662-3-joannelkoong@gmail.com \
--to=joannelkoong@gmail.com \
--cc=brauner@kernel.org \
--cc=djwong@kernel.org \
--cc=fuse-devel@lists.linux.dev \
--cc=hch@lst.de \
--cc=linux-fsdevel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.