]> git.baikalelectronics.ru Git - kernel.git/commit
ext4: use io_end for multiple bios
authorJan Kara <jack@suse.cz>
Tue, 4 Jun 2013 15:58:58 +0000 (11:58 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 4 Jun 2013 15:58:58 +0000 (11:58 -0400)
commitaf15c764b2a4135f0e6b8526f0f7f3ef460d7399
tree32a881fb66aa9058c4cdb3d279925a492f3689ca
parent7ae19336c9699dcdd01e19635fa156167857d06c
ext4: use io_end for multiple bios

Change writeback path to create just one io_end structure for the
extent to which we submit IO and share it among bios writing that
extent. This prevents needless splitting and joining of unwritten
extents when they cannot be submitted as a single bio.

Bugs in ENOMEM handling found by Linux File System Verification project
(linuxtesting.org) and fixed by Alexey Khoroshilov
<khoroshilov@ispras.ru>.

CC: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/ext4.h
fs/ext4/inode.c
fs/ext4/page-io.c