aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/linux-2.6/xfs_sync.c
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2010-07-20 17:52:59 +1000
committerAlex Elder <aelder@sgi.com>2010-07-26 13:16:48 -0500
commitec53d1dbb3ca960e7b552397613358ba1dbd12bd (patch)
tree9b04fd4e4f1149ce0b5927c9f9a89d26fa6a3d4a /fs/xfs/linux-2.6/xfs_sync.c
parentxfs: move inode shrinker unregister even earlier (diff)
downloadlinux-dev-ec53d1dbb3ca960e7b552397613358ba1dbd12bd.tar.xz
linux-dev-ec53d1dbb3ca960e7b552397613358ba1dbd12bd.zip
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>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions