Eric Sandeen
67d73f4122
xfs: handle error if xfs_btree_get_bufs fails
...
commit 93e8befc17 upstream.
Jason reported that a corrupted filesystem failed to replay
the log with a metadata block out of bounds warning:
XFS (dm-2): _xfs_buf_find: Block out of range: block 0x80270fff8, EOFS 0x9c40000
_xfs_buf_find() and xfs_btree_get_bufs() return NULL if
that happens, and then when xfs_alloc_fix_freelist() calls
xfs_trans_binval() on that NULL bp, we oops with:
BUG: unable to handle kernel NULL pointer dereference at 00000000000000f8
We don't handle _xfs_buf_find errors very well, every
caller higher up the stack gets to guess at why it failed.
But we should at least handle it somehow, so return
EFSCORRUPTED here.
Reported-by: Jason L Tibbitts III <tibbs@math.uh.edu >
Signed-off-by: Eric Sandeen <sandeen@redhat.com >
Reviewed-by: Christoph Hellwig <hch@lst.de >
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com >
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2017-10-27 10:38:10 +02:00
..
2017-05-14 14:00:13 +02:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2017-03-15 10:02:44 +08:00
2017-06-29 13:00:28 +02:00
2016-10-15 12:09:13 -07:00
2016-10-10 23:02:51 -04:00
2017-10-21 17:21:35 +02:00
2016-10-10 20:16:43 -07:00
2017-10-21 17:21:37 +02:00
2017-10-18 09:35:37 +02:00
2016-10-10 20:16:43 -07:00
2017-06-24 07:11:12 +02:00
2017-05-25 15:44:38 +02:00
2017-08-06 18:59:43 -07:00
2016-10-10 20:16:43 -07:00
2017-09-09 17:39:40 +02:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-27 18:43:43 -07:00
2016-10-06 09:07:44 -04:00
2017-07-27 15:08:02 -07:00
2017-10-18 09:35:37 +02:00
2017-10-21 17:21:35 +02:00
2017-03-15 10:02:52 +08:00
2016-06-13 10:20:39 +02:00
2017-06-17 06:41:52 +02:00
2017-08-16 13:43:17 -07:00
2017-10-08 10:26:02 +02:00
2016-10-10 20:16:43 -07:00
2017-07-27 15:08:07 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2017-10-08 10:26:09 +02:00
2016-11-30 10:41:26 -08:00
2017-03-30 09:41:27 +02:00
2016-10-10 20:16:43 -07:00
2017-08-06 18:59:39 -07:00
2016-10-27 17:47:11 +02:00
2016-10-11 15:06:33 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2017-10-08 10:26:10 +02:00
2017-10-21 17:21:38 +02:00
2017-06-14 15:06:00 +02:00
2017-08-06 18:59:43 -07:00
2016-10-30 13:09:42 -04:00
2017-10-21 17:21:36 +02:00
2016-10-10 20:16:43 -07:00
2016-09-27 21:06:21 -04:00
2017-09-27 14:39:18 +02:00
2017-07-27 15:08:07 -07:00
2017-10-05 09:43:58 +02:00
2017-08-06 18:59:43 -07:00
2016-08-15 17:43:31 +02:00
2016-10-10 20:16:43 -07:00
2017-07-27 15:08:08 -07:00
2017-06-17 06:41:56 +02:00
2016-10-07 21:48:36 -04:00
2017-04-12 12:41:11 +02:00
2016-10-10 20:16:43 -07:00
2016-09-27 21:06:21 -04:00
2017-07-27 15:08:04 -07:00
2017-07-27 15:08:06 -07:00
2017-06-14 15:06:01 +02:00
2017-10-27 10:38:10 +02:00
2017-07-05 14:40:26 +02:00
2016-10-10 20:16:43 -07:00
2017-01-09 08:32:24 +01:00
2016-07-25 16:51:49 +10:00
2017-07-21 07:42:21 +02:00
2016-08-02 19:35:15 -04:00
2016-07-28 13:29:12 +10:00
2016-09-27 21:06:22 -04:00
2017-10-18 09:35:39 +02:00
2017-06-14 15:06:00 +02:00
2016-08-23 22:58:51 -07:00
2016-09-24 09:27:18 +02:00
2016-09-27 21:20:53 -04:00
2017-07-05 14:40:26 +02:00
2017-02-09 08:08:31 +01:00
2017-08-06 18:59:43 -07:00
2017-10-18 09:35:41 +02:00
2017-09-07 08:35:41 +02:00
2017-07-21 07:42:22 +02:00
2017-07-12 15:01:02 +02:00
2016-09-27 18:47:38 -04:00
2016-08-09 19:58:06 -06:00
2017-09-20 08:20:01 +02:00
2017-09-20 08:20:01 +02:00
2016-09-15 13:29:52 -07:00
2017-09-20 08:19:59 +02:00
2016-10-07 18:46:29 -07:00
2016-08-12 16:47:05 +01:00
2016-10-10 20:16:43 -07:00
2016-10-18 12:21:28 +02:00
2016-06-21 09:23:11 +10:00
2016-08-31 11:44:36 -04:00
2017-07-21 07:42:22 +02:00
2017-10-18 09:35:39 +02:00
2017-08-06 18:59:43 -07:00
2017-07-21 07:42:22 +02:00
2016-10-10 20:16:43 -07:00
2017-07-12 15:01:02 +02:00
2016-10-11 15:06:32 -07:00
2017-07-21 07:42:22 +02:00
2017-03-15 10:02:43 +08:00
2017-01-26 08:24:37 +01:00
2017-10-12 11:51:26 +02:00
2016-10-11 15:06:30 -07:00
2016-10-07 18:46:30 -07:00
2017-02-23 17:44:35 +01:00
2017-06-14 15:06:01 +02:00
2017-03-15 10:02:44 +08:00
2017-05-08 07:47:54 +02:00
2017-06-17 06:41:56 +02:00
2016-10-08 11:06:08 -04:00
2017-10-12 11:51:19 +02:00