linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/11] fuse: convert to using folios and iomap
@ 2024-08-28 21:13 Josef Bacik
  2024-08-28 21:13 ` [PATCH v2 01/11] fuse: convert readahead to use folios Josef Bacik
                   ` (10 more replies)
  0 siblings, 11 replies; 16+ messages in thread
From: Josef Bacik @ 2024-08-28 21:13 UTC (permalink / raw)
  To: linux-fsdevel, amir73il, miklos, joannelkoong, bschubert, willy

v1: https://lore.kernel.org/linux-fsdevel/cover.1724791233.git.josef@toxicpanda.com/

v1->v2:
- Fixed my fstests setup to use --nopassthrough so my code actually got tested
  this time.
- Fixed a bug where we double put on the folio in readpages, because previous
  behavior was the reference was maintained until the endio, but
  readahead_folio() drops the reference on the folio, so we need to not call put
  in the endio anymore.
- Fixed the IS_ERR inversion pointed out by Joanne.
- Made the various adjustments pointed out by Willy.
- Updated the Kconfig per hch's suggestion.
- Pushed to my GH tree since there are dependencies to make it easier to see
  what the code is https://github.com/josefbacik/linux/tree/fuse-iomap

--- Original email ---
Hello,

This is a prep series for my work to enable large folios on fuse.  It has two
dependencies, one is Joanne's writeback clean patches

https://lore.kernel.org/linux-fsdevel/20240826211908.75190-1-joannelkoong@gmail.com/

and an iomap patch to allow us to pass the file through the buffered write path

https://lore.kernel.org/linux-fsdevel/7f55c7c32275004ba00cddf862d970e6e633f750.1724755651.git.josef@toxicpanda.com/

I've run these through an fstests run with passthrough_hp --direct-io,
everything looks good.

The last remaining bit that needs to be made to use folios is the splice/pipe
code, which I need to be a lot more careful about.  The next step is to plumb
through the ability to handle large folios.  But this is a decent start and
removes the bulk of FUSE's use of struct page, and is relatively safe and
straightforward.  Thanks,

Josef

Josef Bacik (11):
  fuse: convert readahead to use folios
  fuse: convert fuse_send_write_pages to use folios
  fuse: convert fuse_fill_write_pages to use folios
  fuse: convert fuse_page_mkwrite to use folios
  fuse: use kiocb_modified in buffered write path
  fuse: use iomap for writeback cache buffered writes
  fuse: convert fuse_do_readpage to use folios
  fuse: convert fuse_writepage_need_send to take a folio
  fuse: use the folio based vmstat helpers
  fuse: convert fuse_retrieve to use folios
  fuse: convert fuse_notify_store to use folios

 fs/fuse/Kconfig |   2 +
 fs/fuse/dev.c   |  38 +++---
 fs/fuse/file.c  | 315 ++++++++++++++++++++++++------------------------
 3 files changed, 183 insertions(+), 172 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2024-09-10 21:51 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-28 21:13 [PATCH v2 00/11] fuse: convert to using folios and iomap Josef Bacik
2024-08-28 21:13 ` [PATCH v2 01/11] fuse: convert readahead to use folios Josef Bacik
2024-08-28 21:13 ` [PATCH v2 02/11] fuse: convert fuse_send_write_pages " Josef Bacik
2024-08-28 21:13 ` [PATCH v2 03/11] fuse: convert fuse_fill_write_pages " Josef Bacik
2024-08-28 21:13 ` [PATCH v2 04/11] fuse: convert fuse_page_mkwrite " Josef Bacik
2024-08-28 21:13 ` [PATCH v2 05/11] fuse: use kiocb_modified in buffered write path Josef Bacik
2024-09-10 21:51   ` Bernd Schubert
2024-08-28 21:13 ` [PATCH v2 06/11] fuse: use iomap for writeback cache buffered writes Josef Bacik
2024-08-29  3:50   ` Dave Chinner
2024-08-29 14:23     ` Josef Bacik
2024-08-29 23:30   ` Bernd Schubert
2024-08-28 21:13 ` [PATCH v2 07/11] fuse: convert fuse_do_readpage to use folios Josef Bacik
2024-08-28 21:13 ` [PATCH v2 08/11] fuse: convert fuse_writepage_need_send to take a folio Josef Bacik
2024-08-28 21:13 ` [PATCH v2 09/11] fuse: use the folio based vmstat helpers Josef Bacik
2024-08-28 21:14 ` [PATCH v2 10/11] fuse: convert fuse_retrieve to use folios Josef Bacik
2024-08-28 21:14 ` [PATCH v2 11/11] fuse: convert fuse_notify_store " Josef Bacik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).