alistair23-linux/fs/ext4
Jan Kara 96f8ba3dd6 ext4: avoid split extents for DAX writes
Currently mapping of blocks for DAX writes happen with
EXT4_GET_BLOCKS_PRE_IO flag set. That has a result that each
ext4_map_blocks() call creates a separate written extent, although it
could be merged to the neighboring extents in the extent tree.  The
reason for using this flag is that in case the extent is unwritten, we
need to convert it to written one and zero it out. However this "convert
mapped range to written" operation is already implemented by
ext4_map_blocks() for the case of data writes into unwritten extent. So
just use flags for that mode of operation, simplify the code, and avoid
unnecessary split extents.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2016-11-20 18:10:09 -05:00
..
acl.c ext4: use current_time() for inode timestamps 2016-11-14 21:40:10 -05:00
acl.h
balloc.c The major change this cycle is deleting ext4's copy of the file system 2016-07-26 18:35:55 -07:00
bitmap.c
block_validity.c ext4: add missing KERN_CONT to a few more debugging uses 2016-10-15 09:57:31 -04:00
dir.c ext4: remove unused variable 2016-09-30 02:14:56 -04:00
ext4.h ext4: convert DAX reads to iomap infrastructure 2016-11-20 17:36:06 -05:00
ext4_extents.h ext4: fix misspellings in comments. 2016-03-09 23:49:05 -05:00
ext4_jbd2.c
ext4_jbd2.h ext4: optimize ext4_should_retry_alloc() to improve ENOSPC performance 2016-06-26 18:24:01 -04:00
extents.c ext4: use current_time() for inode timestamps 2016-11-14 21:40:10 -05:00
extents_status.c ext4: remove trailing \n from ext4_warning/ext4_error calls 2016-04-27 01:11:21 -04:00
extents_status.h
file.c ext4: DAX iomap write support 2016-11-20 18:09:11 -05:00
fsync.c ext4: cleanup ext4_sync_parent() 2016-09-05 23:21:43 -04:00
hash.c
ialloc.c ext4: use current_time() for inode timestamps 2016-11-14 21:40:10 -05:00
indirect.c ext4: refactor direct IO code 2016-05-13 00:44:16 -04:00
inline.c ext4: only set S_DAX if DAX is really supported 2016-11-20 17:32:59 -05:00
inode.c ext4: avoid split extents for DAX writes 2016-11-20 18:10:09 -05:00
ioctl.c ext4: use current_time() for inode timestamps 2016-11-14 21:40:10 -05:00
Kconfig ext4 crypto: migrate into vfs's crypto engine 2016-07-10 14:01:03 -04:00
Makefile ext4 crypto: migrate into vfs's crypto engine 2016-07-10 14:01:03 -04:00
mballoc.c ext4: fix stack memory corruption with 64k block size 2016-11-14 21:26:26 -05:00
mballoc.h ext4: add missing KERN_CONT to a few more debugging uses 2016-10-15 09:57:31 -04:00
migrate.c ext4: fix misspellings in comments. 2016-03-09 23:49:05 -05:00
mmp.c fs: have submit_bh users pass in op and flags separately 2016-06-07 13:41:38 -06:00
move_extent.c ext4: enforce online defrag restriction for encrypted files 2016-08-29 15:45:11 -04:00
namei.c ext4: use current_time() for inode timestamps 2016-11-14 21:40:10 -05:00
page-io.c fscrypt: Let fs select encryption index/tweak 2016-11-13 20:18:16 -05:00
readpage.c Merge branch 'akpm' (patches from Andrew) 2016-07-26 19:55:54 -07:00
resize.c ext4: remove trailing \n from ext4_warning/ext4_error calls 2016-04-27 01:11:21 -04:00
super.c ext4: only set S_DAX if DAX is really supported 2016-11-20 17:32:59 -05:00
symlink.c Merge branch 'work.xattr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-10-10 17:11:50 -07:00
sysfs.c ext4: do not advertise encryption support when disabled 2016-10-12 23:24:51 -04:00
truncate.h
xattr.c ext4: remove parameter from ext4_xattr_ibody_set() 2016-11-14 21:56:48 -05:00
xattr.h ext4: reserve xattr index for the Hurd 2016-07-31 23:38:36 -04:00
xattr_security.c switch xattr_handler->set() to passing dentry and inode separately 2016-05-27 15:39:43 -04:00
xattr_trusted.c switch xattr_handler->set() to passing dentry and inode separately 2016-05-27 15:39:43 -04:00
xattr_user.c switch xattr_handler->set() to passing dentry and inode separately 2016-05-27 15:39:43 -04:00