summaryrefslogtreecommitdiffstats
path: root/fs/dax.c
diff options
context:
space:
mode:
authorRoss Zwisler <ross.zwisler@linux.intel.com>2016-02-26 15:19:49 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2016-02-27 10:28:52 -0800
commit73f34a5e2ceddfca27c999c170620e6354aaf6d7 (patch)
treebbadfef9feecde6b2961f248166f7a526004faaa /fs/dax.c
parent0a6cf9137ded4856b41910a4336677ee0ffa6736 (diff)
downloadlinux-73f34a5e2ceddfca27c999c170620e6354aaf6d7.tar.bz2
ext4: online defrag not supported with DAX
Online defrag operations for ext4 are hard coded to use the page cache. See ext4_ioctl() -> ext4_move_extents() -> move_extent_per_page() When combined with DAX I/O, which circumvents the page cache, this can result in data corruption. This was observed with xfstests ext4/307 and ext4/308. Fix this by only allowing online defrag for non-DAX files. Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com> Reviewed-by: Jan Kara <jack@suse.cz> Cc: Theodore Ts'o <tytso@mit.edu> Cc: Al Viro <viro@ftp.linux.org.uk> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Dave Chinner <david@fromorbit.com> Cc: Jens Axboe <axboe@fb.com> Cc: Matthew Wilcox <matthew.r.wilcox@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/dax.c')
0 files changed, 0 insertions, 0 deletions