All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] Rearrange inode locking
@ 2020-06-22 16:20 Goldwyn Rodrigues
  2020-06-22 16:20 ` [PATCH 1/8] btrfs: Move pos increment and pagecache extension to btrfs_buffered_write() Goldwyn Rodrigues
                   ` (7 more replies)
  0 siblings, 8 replies; 20+ messages in thread
From: Goldwyn Rodrigues @ 2020-06-22 16:20 UTC (permalink / raw)
  To: linux-btrfs

This series attempts to arrange inode locking and unlocking to be more
aligned to ext4 and xfs, and makes it simpler in logic. The main goal is
to have shared inode lock for direct reads and direct writes within EOF
to make sure we do not race with truncate.

The advantage is that we get rid of btrfs_inode->dio_sem in the DIO
path.

This patch is on top of btrfs-iomap-dio work and survived a run of
xfstests.

Git: https://github.com/goldwynr/linux/tree/btrfs-inode-lock

 btrfs_inode.h |   10 -
 ctree.h       |    8 +
 file.c        |  355 +++++++++++++++++++++++++++++++---------------------------
 inode.c       |   13 +-
 4 files changed, 207 insertions(+), 179 deletions(-)

-- 
Goldwyn



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

end of thread, other threads:[~2020-06-30 14:36 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-22 16:20 [PATCH 0/8] Rearrange inode locking Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 1/8] btrfs: Move pos increment and pagecache extension to btrfs_buffered_write() Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 2/8] btrfs: Move FS error state bit early during write Goldwyn Rodrigues
2020-06-30  8:22   ` David Sterba
2020-06-30 14:36     ` Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 3/8] btrfs: Introduce btrfs_write_check() Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 4/8] btrfs: Introduce btrfs_inode_lock()/unlock() Goldwyn Rodrigues
2020-06-24 16:19   ` David Sterba
2020-06-25 17:34     ` Goldwyn Rodrigues
2020-06-26 11:34       ` Hans van Kranenburg
2020-06-26 11:59         ` David Sterba
2020-06-30  8:34   ` David Sterba
2020-06-22 16:20 ` [PATCH 5/8] btrfs: Push inode locking and unlocking in buffered/direct write Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 6/8] btrfs: Use shared inode lock for direct writes within EOF Goldwyn Rodrigues
2020-06-30  8:42   ` David Sterba
2020-06-30 14:24     ` Goldwyn Rodrigues
2020-06-30  9:37   ` Filipe Manana
2020-06-30 14:20     ` Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 7/8] btrfs: Remove dio_sem Goldwyn Rodrigues
2020-06-22 16:20 ` [PATCH 8/8] btrfs: Move generic_write_sync() to btrfs_buffered_write() Goldwyn Rodrigues

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.