android_kernel_xiaomi_sm8350/fs/xfs/linux-2.6
Dave Chinner ec53d1dbb3 xfs: don't block on buffer read errors
xfs_buf_read() fails to detect dispatch errors before attempting to
wait on sychronous IO. If there was an error, it will get stuck
forever, waiting for an I/O that was never started. Make sure the
error is detected correctly.

Further, such a failure can leave locked pages in the page cache
which will cause a later operation to hang on the page. Ensure that
we correctly process pages in the buffers when we get a dispatch
error.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
2010-07-26 13:16:48 -05:00
..
kmem.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
kmem.h
mrlock.h
sv.h
time.h
xfs_acl.c xfs: split xfs_itrace_entry 2010-07-26 13:16:44 -05:00
xfs_aops.c xfs: writepage always has buffers 2010-07-26 13:16:46 -05:00
xfs_aops.h xfs: simplify xfs_vm_writepage 2010-07-26 13:16:41 -05:00
xfs_buf.c xfs: don't block on buffer read errors 2010-07-26 13:16:48 -05:00
xfs_buf.h xfs: do not use emums for flags used in tracing 2010-07-26 13:16:43 -05:00
xfs_cred.h
xfs_export.c xfs: remove xfs_iput_new 2010-07-26 13:16:44 -05:00
xfs_export.h
xfs_file.c xfs: remove a dmapi leftover 2010-07-26 13:16:47 -05:00
xfs_fs_subr.c xfs: drop dmapi hooks 2010-07-26 13:16:33 -05:00
xfs_globals.c
xfs_globals.h
xfs_ioctl32.c xfs: split xfs_itrace_entry 2010-07-26 13:16:44 -05:00
xfs_ioctl32.h
xfs_ioctl.c xfs: split xfs_itrace_entry 2010-07-26 13:16:44 -05:00
xfs_ioctl.h
xfs_iops.c xfs: split xfs_itrace_entry 2010-07-26 13:16:44 -05:00
xfs_iops.h
xfs_linux.h xfs: drop dmapi hooks 2010-07-26 13:16:33 -05:00
xfs_quotaops.c xfs: drop dmapi hooks 2010-07-26 13:16:33 -05:00
xfs_stats.c
xfs_stats.h
xfs_super.c xfs: move inode shrinker unregister even earlier 2010-07-26 13:16:47 -05:00
xfs_super.h xfs: drop dmapi hooks 2010-07-26 13:16:33 -05:00
xfs_sync.c xfs: remove explicit xfs_sync_data/xfs_sync_attr calls on umount 2010-07-26 13:16:42 -05:00
xfs_sync.h xfs: remove explicit xfs_sync_data/xfs_sync_attr calls on umount 2010-07-26 13:16:42 -05:00
xfs_sysctl.c
xfs_sysctl.h
xfs_trace.c xfs: remove unneeded #include statements 2010-07-26 13:16:33 -05:00
xfs_trace.h xfs: split xfs_itrace_entry 2010-07-26 13:16:44 -05:00
xfs_version.h
xfs_vnode.h
xfs_xattr.c xfs: constify xattr_handler 2010-05-21 18:31:19 -04:00