All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/11] ext4: Bunch of DIO/AIO fixes V4
@ 2012-09-28 15:44 Dmitry Monakhov
  2012-09-28 15:44 ` [PATCH 01/11] ext4: ext4_inode_info diet Dmitry Monakhov
                   ` (10 more replies)
  0 siblings, 11 replies; 30+ messages in thread
From: Dmitry Monakhov @ 2012-09-28 15:44 UTC (permalink / raw)
  To: linux-ext4; +Cc: tytso, jack, lczerner, Dmitry Monakhov

There are number of races exist caused by lack of synchronization
between DIO/AIO workers and truncate/fsync/punch_hole routines
This patch series try to optimize and fix existing DIO/AIO code

I observe significant performance improvements for big SMP hosts.

Testcases which helps me to catch this type of bugs was posted here
http://www.spinics.net/lists/linux-fsdevel/msg58312.html
or available on my github repo:
https://github.com/dmonakhov/xfstests/tree/ce8e3adab629b2a9be8ba2e73db7dad49eb46614
plese run 286,287,288

TOC:
# first two are cleanups
ext4: ext4_inode_info diet
ext4: give i_aiodio_unwritten more appropriate name
# Bugfixes and improvements
ext4: fix unwritten counter leakage
ext4: completed_io locking cleanup V4
ext4: remove ext4_end_io()
ext4: serialize dio nonlocked reads with defrag workers V3
ext4: serialize unlocked dio reads with truncate
ext4: endless truncate due to nonlocked dio readers V2
ext4: serialize truncate with owerwrite DIO workers V2
# Nasty panch_hole regressions
ext4: punch_hole should wait for DIO writers V2
ext4: fix ext_remove_space for punch_hole case

Changes from V3:
	- satisfy ./checkpatch.pl rules
 	- Rework 'completed_io locking cleanup'
	- fix mistype in 'serialize dio nonlocked reads with defrag workers V3'
	- add extra inode's flag checks to 'punch_hole should wait for DIO'
Changes from V2:
	Fix use-after-free for queued end_io_work.

 fs/ext4/ext4.h        |   36 +++++++-
 fs/ext4/extents.c     |   92 ++++++++++++++--------
 fs/ext4/file.c        |    6 -
 fs/ext4/fsync.c       |   81 --------------------
 fs/ext4/indirect.c    |   18 +++-
 fs/ext4/inode.c       |   49 +++++-------
 fs/ext4/move_extent.c |    8 +
 fs/ext4/page-io.c     |  202 ++++++++++++++++++++++++++++++--------------------
 fs/ext4/super.c       |    3
 9 files changed, 262 insertions(+), 235 deletions(-)

Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>

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

end of thread, other threads:[~2012-10-05  7:29 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-28 15:44 [PATCH 00/11] ext4: Bunch of DIO/AIO fixes V4 Dmitry Monakhov
2012-09-28 15:44 ` [PATCH 01/11] ext4: ext4_inode_info diet Dmitry Monakhov
2012-10-01 16:28   ` Jan Kara
2012-09-28 15:44 ` [PATCH 02/11] ext4: give i_aiodio_unwritten more appropriate name Dmitry Monakhov
2012-09-28 15:44 ` [PATCH 03/11] ext4: fix unwritten counter leakage Dmitry Monakhov
2012-10-01 16:37   ` Jan Kara
2012-09-28 15:44 ` [PATCH 04/11] ext4: completed_io locking cleanup V4 Dmitry Monakhov
2012-10-01 18:38   ` Jan Kara
2012-10-02  7:16     ` Dmitry Monakhov
2012-10-02 10:31       ` Jan Kara
2012-10-02 10:57         ` Dmitry Monakhov
2012-10-02 11:11           ` Jan Kara
2012-10-02 12:42             ` Dmitry Monakhov
2012-10-02 13:30               ` Jan Kara
2012-10-03 11:21                 ` Dmitry Monakhov
2012-10-04 10:22                   ` Jan Kara
2012-09-28 15:44 ` [PATCH 05/11] ext4: remove ext4_end_io() Dmitry Monakhov
2012-10-04 22:57   ` Anatol Pomozov
2012-10-05  4:28     ` Theodore Ts'o
2012-09-28 15:44 ` [PATCH 06/11] ext4: serialize dio nonlocked reads with defrag workers V3 Dmitry Monakhov
2012-10-01 16:39   ` Jan Kara
2012-09-28 15:44 ` [PATCH 07/11] ext4: serialize unlocked dio reads with truncate Dmitry Monakhov
2012-09-29  4:49   ` Theodore Ts'o
2012-09-29 11:43     ` Dmitry Monakhov
2012-09-28 15:44 ` [PATCH 08/11] ext4: endless truncate due to nonlocked dio readers V2 Dmitry Monakhov
2012-10-01 16:41   ` Jan Kara
2012-09-28 15:44 ` [PATCH 09/11] ext4: serialize truncate with owerwrite DIO workers V2 Dmitry Monakhov
2012-09-28 15:44 ` [PATCH 10/11] ext4: punch_hole should wait for DIO writers V2 Dmitry Monakhov
2012-10-01 16:46   ` Jan Kara
2012-09-28 15:44 ` [PATCH 11/11] ext4: fix ext_remove_space for punch_hole case Dmitry Monakhov

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.