Dave Chinner
0e95f19ad9
xfs: check for buffer errors before waiting
...
If we call xfs_buf_iowait() on a buffer that failed dispatch due to
an IO error, it will wait forever for an Io that does not exist.
This is hndled in xfs_buf_read, but there is other code that calls
xfs_buf_iowait directly that doesn't.
Rather than make the call sites have to handle checking for dispatch
errors and then checking for completion errors, make
xfs_buf_iowait() check for dispatch errors on the buffer before
waiting. This means we handle both dispatch and completion errors
with one set of error handling at the caller sites.
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Mark Tinguely <tinguely@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
2012-05-14 16:20:42 -05:00
..
2011-08-12 16:21:35 -05:00
2012-02-10 12:38:09 -06:00
2012-03-14 11:09:06 -05:00
2011-08-12 16:21:35 -05:00
2011-08-12 16:21:35 -05:00
2011-08-12 16:21:35 -05:00
2011-08-12 16:21:35 -05:00
2011-12-16 15:17:42 -06:00
2011-08-01 02:35:04 -04:00
2011-07-25 15:03:13 -05:00
2011-07-13 13:43:50 +02:00
2012-03-27 16:07:03 -05:00
2012-03-27 16:07:03 -05:00
2012-05-14 16:20:40 -05:00
2012-03-13 16:30:49 -05:00
2012-03-27 17:18:21 -05:00
2012-03-27 17:18:21 -05:00
2011-07-13 13:43:50 +02:00
2012-05-14 16:20:38 -05:00
2011-10-11 21:15:07 -05:00
2011-10-11 21:15:09 -05:00
2011-07-25 15:03:13 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:42 -05:00
2012-05-14 16:20:42 -05:00
2012-03-27 17:18:21 -05:00
2011-07-13 13:43:50 +02:00
2012-03-13 17:08:17 -05:00
2011-07-25 15:03:13 -05:00
2012-03-14 13:21:17 -05:00
2011-07-13 13:43:48 +02:00
2011-07-13 13:43:48 +02:00
2011-10-11 21:15:03 -05:00
2011-07-25 13:56:39 -07:00
2011-07-13 13:43:48 +02:00
2011-07-13 13:43:48 +02:00
2011-07-26 15:05:16 -04:00
2011-07-13 13:43:48 +02:00
2012-03-27 16:07:03 -05:00
2011-08-12 16:21:35 -05:00
2012-05-14 16:20:33 -05:00
2011-08-12 16:21:35 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:31 -05:00
2011-12-06 10:46:23 -06:00
2011-08-12 16:21:35 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:20 -05:00
2011-10-11 21:15:06 -05:00
2012-01-17 15:08:53 -06:00
2011-07-08 11:32:51 -05:00
2011-10-11 21:15:01 -05:00
2011-08-12 16:21:35 -05:00
2011-07-13 13:43:50 +02:00
2012-01-03 22:55:00 -05:00
2012-01-03 22:55:00 -05:00
2012-05-14 16:20:25 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:31 -05:00
2011-07-08 14:35:03 +02:00
2012-03-14 13:21:17 -05:00
2011-08-12 16:21:35 -05:00
2012-03-22 15:56:52 -05:00
2011-08-12 16:21:35 -05:00
2012-05-14 16:20:39 -05:00
2012-05-14 16:20:20 -05:00
2011-08-12 16:21:35 -05:00
2012-03-26 17:19:08 -05:00
2011-10-11 11:02:49 -05:00
2012-05-14 16:20:34 -05:00
2012-05-14 16:20:34 -05:00
2012-05-14 16:20:42 -05:00
2012-05-14 16:20:26 -05:00
2012-05-14 16:20:26 -05:00
2011-08-12 16:21:35 -05:00
2011-10-31 17:30:54 -07:00
2012-05-14 16:20:27 -05:00
2012-05-14 16:20:34 -05:00
2012-03-14 12:06:32 -05:00
2012-03-14 11:53:34 -05:00
2012-05-14 16:20:31 -05:00
2012-03-14 12:06:32 -05:00
2012-03-14 11:09:06 -05:00
2012-02-03 11:32:20 -06:00
2011-08-12 16:21:35 -05:00
2012-03-20 21:29:32 -04:00
2012-03-22 15:31:06 -05:00
2011-07-25 15:03:13 -05:00
2011-10-11 21:15:10 -05:00
2011-10-11 21:15:10 -05:00
2012-02-02 17:08:04 -06:00
2012-03-14 11:09:06 -05:00
2012-03-14 11:09:06 -05:00
2012-05-14 16:20:34 -05:00
2012-03-14 12:06:32 -05:00
2012-05-14 16:20:33 -05:00
2012-03-13 17:01:15 -05:00
2011-08-12 16:21:35 -05:00
2011-08-12 16:21:35 -05:00
2011-08-12 16:21:35 -05:00
2012-05-14 16:20:31 -05:00
2012-05-14 16:20:33 -05:00
2012-05-14 16:20:31 -05:00
2012-03-14 12:06:32 -05:00
2012-03-13 17:08:17 -05:00
2012-05-14 16:20:33 -05:00
2012-02-22 22:37:04 -06:00
2012-05-14 16:20:31 -05:00
2011-04-28 13:18:04 -05:00
2012-03-20 21:29:32 -04:00
2012-01-03 22:55:00 -05:00
2012-03-15 13:40:16 -05:00
2012-03-20 21:29:32 -04:00
2012-03-15 13:40:16 -05:00
2011-08-12 16:21:35 -05:00
2011-08-12 13:57:55 -05:00