All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kara <jack@suse.cz>
To: Ted Tso <tytso@mit.edu>
Cc: <linux-ext4@vger.kernel.org>,
	Christoph Hellwig <hch@infradead.org>,
	"Ritesh Harjani (IBM)" <ritesh.list@gmail.com>,
	Jan Kara <jack@suse.cz>
Subject: [PATCH v4 0/13] ext4: Stop using ext4_writepage() for writeout of ordered data
Date: Wed,  7 Dec 2022 12:27:03 +0100	[thread overview]
Message-ID: <20221207112259.8143-1-jack@suse.cz> (raw)

Hello,

this patch series modifies ext4 so that we stop using ext4_writepage() for
writeout of ordered data during transaction commit (through
generic_writepages() from jbd2_journal_submit_inode_data_buffers()). Instead we
directly call ext4_writepages() from the
ext4_journal_submit_inode_data_buffers(). This is part of Christoph's effort
to get rid of the .writepage() callback in all filesystems.

I have also modified ext4_writepages() to use write_cache_pages() instead of
generic_writepages() so now we don't expose .writepage hook at all. We still
keep ext4_writepage() as a callback for write_cache_pages(). We should refactor
that path as well and get rid of ext4_writepage() completely but that is for a
separate cleanup. Also note that jbd2 still uses generic_writepages() in its
jbd2_journal_submit_inode_data_buffers() helper because it is still used from
OCFS2. Again, something to be dealt with in a separate patchset.

Changes since v3:
* Added export of buffer_migrate_page_norefs()
* Clarified commit message about page migration a bit

Changes since v2:
* Added Reviewed-by tags from Christoph
* Added WARN_ON to verify we're not trying to start transaction from
  transaction commit writeback
* Converted fastcommit path to use ext4_writepages() for data writeout
* Some minor tweaks suggested by Christoph

Changes since v1:
* Added Reviewed-by tags from Ritesh
* Added patch to get rid of generic_writepages() in ext4_writepages()
* Added patch to get rid of .writepage hook

								Honza
Previous versions:
Link: http://lore.kernel.org/r/20221130162435.2324-1-jack@suse.cz # v1
Link: http://lore.kernel.org/r/20221202163815.22928-1-jack@suse.cz # v2
Link: http://lore.kernel.org/r/20221205122604.25994-1-jack@suse.cz # v3

             reply	other threads:[~2022-12-07 11:27 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-07 11:27 Jan Kara [this message]
2022-12-07 11:27 ` [PATCH v4 01/13] ext4: Handle redirtying in ext4_bio_write_page() Jan Kara
2022-12-07 11:27 ` [PATCH v4 02/13] ext4: Move keep_towrite handling to ext4_bio_write_page() Jan Kara
2022-12-07 11:27 ` [PATCH v4 03/13] ext4: Remove nr_submitted from ext4_bio_write_page() Jan Kara
2022-12-07 11:27 ` [PATCH v4 04/13] ext4: Drop pointless IO submission " Jan Kara
2022-12-07 11:27 ` [PATCH v4 05/13] ext4: Add support for writepages calls that cannot map blocks Jan Kara
2022-12-07 11:27 ` [PATCH v4 06/13] ext4: Provide ext4_do_writepages() Jan Kara
2022-12-07 11:27 ` [PATCH v4 07/13] ext4: Move percpu_rwsem protection into ext4_writepages() Jan Kara
2022-12-07 11:27 ` [PATCH v4 08/13] ext4: Switch to using ext4_do_writepages() for ordered data writeout Jan Kara
2022-12-07 11:27 ` [PATCH v4 09/13] jbd2: Switch jbd2_submit_inode_data() to use fs-provided hook for " Jan Kara
2022-12-08 15:28   ` Ritesh Harjani (IBM)
2022-12-07 11:27 ` [PATCH v4 10/13] ext4: Switch to using write_cache_pages() for data=journal writeout Jan Kara
2022-12-08 15:40   ` Ritesh Harjani (IBM)
2022-12-08 16:33     ` Jan Kara
2022-12-07 11:27 ` [PATCH v4 11/13] mm: Export buffer_migrate_folio_norefs() Jan Kara
2022-12-07 11:59   ` Christoph Hellwig
2022-12-07 11:27 ` [PATCH v4 12/13] ext4: Stop providing .writepage hook Jan Kara
2023-05-08 17:51   ` youling257
2023-05-09  0:25     ` Jan Kara
2023-05-09  5:02     ` Eric Biggers
2023-05-09 18:36       ` Theodore Ts'o
2023-05-10  5:17         ` youling 257
2023-05-10  5:47           ` youling 257
2023-05-10  6:50             ` Eric Biggers
2023-05-10 22:00               ` Theodore Ts'o
2022-12-07 11:27 ` [PATCH v4 13/13] ext4: Remove ordered data support from ext4_writepage() Jan Kara
2022-12-08 14:23   ` Theodore Ts'o
2022-12-08 15:40     ` Jan Kara
2022-12-08 15:57     ` Theodore Ts'o

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=20221207112259.8143-1-jack@suse.cz \
    --to=jack@suse.cz \
    --cc=hch@infradead.org \
    --cc=linux-ext4@vger.kernel.org \
    --cc=ritesh.list@gmail.com \
    --cc=tytso@mit.edu \
    /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.