Linux-f2fs-devel Archive on lore.kernel.org help / color / mirror / Atom feed
From: Eric Biggers <ebiggers@kernel.org> To: linux-f2fs-devel@lists.sourceforge.net, Jaegeuk Kim <jaegeuk@kernel.org>, Chao Yu <chao@kernel.org> Cc: linux-fsdevel@vger.kernel.org, linux-xfs@vger.kernel.org, Matthew Bobrowski <mbobrowski@mbobrowski.org>, Satya Tangirala <satyaprateek2357@gmail.com>, Changheun Lee <nanich.lee@samsung.com> Subject: [f2fs-dev] [PATCH 0/9] f2fs: use iomap for direct I/O Date: Fri, 16 Jul 2021 09:39:10 -0500 [thread overview] Message-ID: <20210716143919.44373-1-ebiggers@kernel.org> (raw) This series makes f2fs implement direct I/O using iomap_dio_rw() instead of __blockdev_direct_IO(). In order to do this, it adds f2fs_iomap_ops, since this is the first use of iomap in f2fs. The iomap direct I/O implementation is more efficient than the fs/direct-io.c implementation. Switching to iomap also avoids the need to add new features and optimizations to the old implementation. E.g., see https://lore.kernel.org/r/20200710053406.GA25530@infradead.org and https://lore.kernel.org/r/YKJBWClI7sUeABDs@infradead.org. In general, this series preserves existing f2fs behavior (such as the conditions for falling back to buffered I/O) and is only an implementation change. Patches 1-5 contain cleanups and fixes for f2fs_file_write_iter(). Patch 6 adds f2fs_iomap_ops, patch 7 and 8 switch direct I/O reads and writes to iomap, and patch 9 removes obsoleted code. Careful review is appreciated, as I'm not an expert in all areas here. This series has been tested with xfstests by running 'gce-xfstests -c f2fs -g auto -X generic/017' with and without this series; no regressions were seen. (Some tests fail both before and after. generic/017 hangs both before and after, so it had to be excluded.) This series applies to v5.14-rc1. Eric Biggers (9): f2fs: make f2fs_write_failed() take struct inode f2fs: remove allow_outplace_dio() f2fs: rework write preallocations f2fs: reduce indentation in f2fs_file_write_iter() f2fs: fix the f2fs_file_write_iter tracepoint f2fs: implement iomap operations f2fs: use iomap for direct I/O reads f2fs: use iomap for direct I/O writes f2fs: remove f2fs_direct_IO() fs/f2fs/Kconfig | 1 + fs/f2fs/data.c | 286 +++++++------------------ fs/f2fs/f2fs.h | 29 +-- fs/f2fs/file.c | 416 +++++++++++++++++++++++++++++------- include/trace/events/f2fs.h | 12 +- 5 files changed, 421 insertions(+), 323 deletions(-) base-commit: e73f0f0ee7541171d89f2e2491130c7771ba58d3 -- 2.32.0 _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
next reply other threads:[~2021-07-16 14:40 UTC|newest] Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-07-16 14:39 Eric Biggers [this message] 2021-07-16 14:39 ` [f2fs-dev] [PATCH 1/9] f2fs: make f2fs_write_failed() take struct inode Eric Biggers 2021-07-25 10:00 ` Chao Yu 2021-07-16 14:39 ` [f2fs-dev] [PATCH 2/9] f2fs: remove allow_outplace_dio() Eric Biggers 2021-07-19 8:41 ` Christoph Hellwig 2021-07-16 14:39 ` [f2fs-dev] [PATCH 3/9] f2fs: rework write preallocations Eric Biggers 2021-07-25 10:50 ` Chao Yu 2021-07-25 17:57 ` Eric Biggers 2021-07-27 2:00 ` Jaegeuk Kim 2021-07-27 3:23 ` Chao Yu 2021-07-27 7:38 ` Eric Biggers 2021-07-27 8:30 ` Chao Yu 2021-07-27 15:33 ` Darrick J. Wong 2021-07-29 0:26 ` Chao Yu 2021-07-28 2:29 ` Jaegeuk Kim 2021-07-25 15:35 ` Jaegeuk Kim 2021-07-25 15:47 ` Jaegeuk Kim 2021-07-25 18:01 ` Eric Biggers 2021-07-26 19:04 ` Jaegeuk Kim 2021-07-16 14:39 ` [f2fs-dev] [PATCH 4/9] f2fs: reduce indentation in f2fs_file_write_iter() Eric Biggers 2021-07-16 14:39 ` [f2fs-dev] [PATCH 5/9] f2fs: fix the f2fs_file_write_iter tracepoint Eric Biggers 2021-07-16 14:39 ` [f2fs-dev] [PATCH 6/9] f2fs: implement iomap operations Eric Biggers 2021-07-19 8:59 ` Christoph Hellwig 2021-07-22 20:47 ` Jaegeuk Kim 2021-07-22 20:49 ` Jaegeuk Kim 2021-07-22 20:54 ` Eric Biggers 2021-07-22 21:57 ` Jaegeuk Kim 2021-07-23 1:52 ` Eric Biggers 2021-07-23 5:00 ` Christoph Hellwig 2021-07-23 8:05 ` Eric Biggers 2021-07-16 14:39 ` [f2fs-dev] [PATCH 7/9] f2fs: use iomap for direct I/O reads Eric Biggers 2021-07-16 14:39 ` [f2fs-dev] [PATCH 8/9] f2fs: use iomap for direct I/O writes Eric Biggers 2021-07-16 14:39 ` [f2fs-dev] [PATCH 9/9] f2fs: remove f2fs_direct_IO() Eric Biggers
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=20210716143919.44373-1-ebiggers@kernel.org \ --to=ebiggers@kernel.org \ --cc=chao@kernel.org \ --cc=jaegeuk@kernel.org \ --cc=linux-f2fs-devel@lists.sourceforge.net \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-xfs@vger.kernel.org \ --cc=mbobrowski@mbobrowski.org \ --cc=nanich.lee@samsung.com \ --cc=satyaprateek2357@gmail.com \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).