All of lore.kernel.org
 help / color / mirror / Atom feed
* btrfs direct-io using iomap
@ 2019-11-15 16:16 Goldwyn Rodrigues
  2019-11-15 16:16 ` [PATCH 1/7] fs: Export generic_file_buffered_read() Goldwyn Rodrigues
                   ` (6 more replies)
  0 siblings, 7 replies; 19+ messages in thread
From: Goldwyn Rodrigues @ 2019-11-15 16:16 UTC (permalink / raw)
  To: linux-btrfs; +Cc: linux-fsdevel, hch, darrick.wong

This is an effort to use iomap for direct I/O in btrfs. This would
change the call from __blockdev_direct_io() to iomap_dio_rw().

The main objective is to lose the buffer head and use bio defined by
iomap code, and hopefully to use more of generic-FS codebase.

I have tested it against xfstests. The performance seems to be nearly
the same on my VMs.

-- 
Goldwyn

 fs/btrfs/ctree.h      |    1 
 fs/btrfs/extent_io.c  |    8 ++-
 fs/btrfs/file.c       |   67 +++++++++++++++++++++++++-
 fs/btrfs/inode.c      |  128 +++++++++++++++++++++-----------------------------
 fs/iomap/direct-io.c  |   14 +++--
 include/linux/fs.h    |    2 
 include/linux/iomap.h |    2 
 mm/filemap.c          |   13 ++---
 8 files changed, 147 insertions(+), 88 deletions(-)


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

end of thread, other threads:[~2019-11-19 17:26 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-15 16:16 btrfs direct-io using iomap Goldwyn Rodrigues
2019-11-15 16:16 ` [PATCH 1/7] fs: Export generic_file_buffered_read() Goldwyn Rodrigues
2019-11-15 16:16 ` [PATCH 2/7] btrfs: basic direct I/O read operation Goldwyn Rodrigues
2019-11-15 16:45   ` Christoph Hellwig
2019-11-15 16:16 ` [PATCH 3/7] iomap: use a function pointer for dio submits Goldwyn Rodrigues
2019-11-15 16:47   ` Christoph Hellwig
2019-11-15 20:11     ` Goldwyn Rodrigues
2019-11-15 16:16 ` [PATCH 4/7] btrfs: Use iomap_dio_rw() for direct I/O Goldwyn Rodrigues
2019-11-15 17:06   ` Christoph Hellwig
2019-11-18 15:54     ` Goldwyn Rodrigues
2019-11-18 16:54   ` Filipe Manana
2019-11-19 17:01     ` Goldwyn Rodrigues
2019-11-19 17:24       ` Darrick J. Wong
2019-11-15 16:16 ` [PATCH 5/7] btrfs: Use iomap_dio_ops.submit_io() Goldwyn Rodrigues
2019-11-15 16:47   ` Christoph Hellwig
2019-11-15 16:16 ` [PATCH 6/7] btrfs: flush dirty pages on compressed I/O for dio Goldwyn Rodrigues
2019-11-15 16:50   ` Christoph Hellwig
2019-11-15 16:17 ` [PATCH 7/7] btrfs: Wait for extent bits to release page Goldwyn Rodrigues
2019-11-15 16:56   ` Christoph Hellwig

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.