summaryrefslogtreecommitdiffstats
path: root/fs/jbd2
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2019-05-30 11:56:23 -0400
committerTheodore Ts'o <tytso@mit.edu>2019-05-30 11:56:23 -0400
commitb9c1c26739ec2d4b4fb70207a0a9ad6747e43f4c (patch)
treee44011f1c26fc058d77ad968756fde4740c5453b /fs/jbd2
parentcd6c84d8f0cdc911df435bb075ba22ce3c605b07 (diff)
downloadlinux-b9c1c26739ec2d4b4fb70207a0a9ad6747e43f4c.tar.gz
linux-b9c1c26739ec2d4b4fb70207a0a9ad6747e43f4c.tar.bz2
linux-b9c1c26739ec2d4b4fb70207a0a9ad6747e43f4c.zip
ext4: gracefully handle ext4_break_layouts() failure during truncate
ext4_break_layouts() may fail e.g. due to a signal being delivered. Thus we need to handle its failure gracefully and not by taking the filesystem down. Currently ext4_break_layouts() failure is rare but it may become more common once RDMA uses layout leases for handling long-term page pins for DAX mappings. To handle the failure we need to move ext4_break_layouts() earlier during setattr handling before we do hard to undo changes such as modifying inode size. To be able to do that we also have to move some other checks which are better done without holding i_mmap_sem earlier. Reported-and-tested-by: Ira Weiny <ira.weiny@intel.com> Reviewed-by: Ira Weiny <ira.weiny@intel.com> Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/jbd2')
0 files changed, 0 insertions, 0 deletions