* [GIT PULL] fuse update for 6.16
@ 2025-06-02 13:19 Miklos Szeredi
2025-06-02 22:58 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: Miklos Szeredi @ 2025-06-02 13:19 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-fsdevel, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 4284 bytes --]
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git
tags/fuse-update-6.16
- Remove tmp page copying in writeback path (Joanne). This removes
~300 lines and with that a lot of complexity related to avoiding
reclaim related deadlock. The old mechanism is replaced with a
mapping flag that tells the MM not to block reclaim waiting for
writeback to complete. The MM parts have been reviewed/acked by
respective maintainers.
- Convert more code to handle large folios (Joanne). This still just
adds the code to deal with large folios and does not enable them yet.
- Allow invalidating all cached lookups atomically (Luis Henriques).
This feature is useful for CernVMFS, which currently does this
iteratively.
- Align write prefaulting in fuse with generic one (Dave Hansen)
- Fix race causing invalid data to be cached when setting attributes
on different nodes of a distributed fs (Guang Yuan Wu)
- Update documentation for passthrough (Chen Linxuan)
- Add fdinfo about the device number associated with an opened
/dev/fuse instance (Chen Linxuan)
- Increase readdir buffer size (Miklos). This depends on a patch to
VFS readdir code that was already merged through Christians tree.
- Optimize io-uring request expiration (Joanne)
- Misc cleanups
There's conflict with commit 74e6ee62a894 ("fuse: drop usage of
folio_index") the first hunk of which just gets evicted with the tmp
page cleanup and the second one needs to apply the trivial
folio_index(folio) -> folio->index conversion to my version.
Resolution attached.
Thanks,
Miklos
---
Chen Linxuan (3):
MAINTAINERS: update filter of FUSE documentation
docs: filesystems: add fuse-passthrough.rst
fs: fuse: add dev id to /dev/fuse fdinfo
Dave Hansen (1):
fuse: Move prefaulting out of hot write path
Guang Yuan Wu (1):
fuse: fix race between concurrent setattrs from multiple nodes
Jiale Yang (1):
fuse: change 'unsigned' to 'unsigned int'
Joanne Koong (15):
fuse: Convert 'write' to a bit-field in struct fuse_copy_state
fuse: use boolean bit-fields in struct fuse_copy_state
fuse: optimize over-io-uring request expiration check
mm: skip folio reclaim in legacy memcg contexts for deadlockable mappings
fuse: remove tmp folio for writebacks and internal rb tree
fuse: support copying large folios
fuse: support large folios for retrieves
fuse: refactor fuse_fill_write_pages()
fuse: support large folios for writethrough writes
fuse: support large folios for folio reads
fuse: support large folios for symlinks
fuse: support large folios for stores
fuse: support large folios for queued writes
fuse: support large folios for readahead
fuse: support large folios for writeback
Luis Henriques (1):
fuse: add more control over cache invalidation behaviour
Miklos Szeredi (3):
fuse: don't allow signals to interrupt getdents copying
readdir: supply dir_context.count as readdir buffer size hint
fuse: increase readdir buffer size
---
Documentation/filesystems/fuse-passthrough.rst | 133 +++++++
Documentation/filesystems/index.rst | 1 +
MAINTAINERS | 2 +-
fs/exportfs/expfs.c | 1 +
fs/fuse/dev.c | 182 ++++++----
fs/fuse/dev_uring.c | 34 +-
fs/fuse/dir.c | 46 ++-
fs/fuse/file.c | 474 ++++++-------------------
fs/fuse/fuse_dev_i.h | 9 +-
fs/fuse/fuse_i.h | 10 +-
fs/fuse/inode.c | 11 +-
fs/fuse/readdir.c | 40 +--
fs/overlayfs/readdir.c | 12 +-
fs/readdir.c | 47 ++-
include/linux/fs.h | 10 +
include/linux/pagemap.h | 11 +
include/uapi/linux/fuse.h | 6 +-
mm/vmscan.c | 12 +-
18 files changed, 519 insertions(+), 522 deletions(-)
create mode 100644 Documentation/filesystems/fuse-passthrough.rst
[-- Attachment #2: conflict-res.patch --]
[-- Type: text/x-patch, Size: 543 bytes --]
diff --cc fs/fuse/file.c
index 6f19a4daa559,3d0b33be3824..000000000000
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@@ -2349,7 -2118,7 +2118,7 @@@ static bool fuse_writepage_need_send(st
return true;
/* Discontinuity */
- if (data->orig_folios[ap->num_folios - 1]->index + 1 != folio->index)
- if (folio_next_index(ap->folios[ap->num_folios - 1]) != folio_index(folio))
++ if (folio_next_index(ap->folios[ap->num_folios - 1]) != folio->index
return true;
/* Need to grow the pages array? If so, did the expansion fail? */
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] fuse update for 6.16
2025-06-02 13:19 [GIT PULL] fuse update for 6.16 Miklos Szeredi
@ 2025-06-02 22:58 ` pr-tracker-bot
0 siblings, 0 replies; 2+ messages in thread
From: pr-tracker-bot @ 2025-06-02 22:58 UTC (permalink / raw)
To: Miklos Szeredi; +Cc: Linus Torvalds, linux-fsdevel, linux-kernel
The pull request you sent on Mon, 2 Jun 2025 15:19:12 +0200:
> git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git tags/fuse-update-6.16
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/2619a6d413f4c3c4c1eddf63e83ecc345f250d07
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-06-02 22:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-02 13:19 [GIT PULL] fuse update for 6.16 Miklos Szeredi
2025-06-02 22:58 ` pr-tracker-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®