Brian Behlendorf
2cd0f98f4a
Verify BPs in spa_load_verify_cb() and dsl_scan_visitbp()
...
We want `zpool import` to be highly robust and never panic, even
when encountering corrupt metadata. This is already handled in the
arc_read() code path, which covers most cases, but spa_load_verify_cb()
relies on zio_read() and is responsible for verifying the block pointer.
During import it is also possible to encounter blocks pointers which
contain ZIO_COMPRESS_INHERIT and ZIO_CHECKSUM_INHERIT values. Relax
the verification function slightly to allow this.
Futhermore, extend dsl_scan_recurse() to verify the block pointer
contents of level zero blocks which are not of type DMU_OT_DNODE or
DMU_OT_OBJSET. This is handled by arc_read() in the other cases.
Reviewed-by: Paul Dagnelie <pcd@delphix.com >
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov >
Closes #13124
Closes #13360
2022-05-20 10:36:14 -07:00
..
2022-02-15 08:58:59 -08:00
2022-03-15 15:13:42 -07:00
2022-05-04 11:59:30 -07:00
2022-03-15 15:13:42 -07:00
2019-07-26 10:54:14 -07:00
2022-03-15 15:13:42 -07:00
2021-12-23 09:42:47 -08:00
2019-06-19 09:48:12 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-05-04 11:17:29 -07:00
2022-05-06 11:57:37 -07:00
2022-01-14 15:37:55 -08:00
2022-03-15 15:13:42 -07:00
2021-12-23 09:42:47 -08:00
2020-11-02 11:51:12 -08:00
2022-03-15 15:13:42 -07:00
2022-03-23 08:51:00 -07:00
2022-03-23 08:51:00 -07:00
2022-03-23 08:51:00 -07:00
2022-03-15 15:13:42 -07:00
2022-02-18 09:34:03 -08:00
2022-01-26 11:38:52 -08:00
2022-04-26 10:44:21 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-03-28 10:03:13 -07:00
2022-03-15 15:13:42 -07:00
2022-04-28 15:12:24 -07:00
2022-03-15 15:13:42 -07:00
2019-10-09 10:36:03 -07:00
2022-04-25 17:25:42 -07:00
2022-03-08 09:16:35 -08:00
2022-03-08 09:16:35 -08:00
2022-02-15 08:58:59 -08:00
2022-05-20 10:36:14 -07:00
2021-12-23 09:42:47 -08:00
2020-06-07 11:42:12 -07:00
2022-03-15 15:13:42 -07:00
2022-01-14 15:37:55 -08:00
2022-03-15 15:13:48 -07:00
2022-03-15 15:13:42 -07:00
2022-01-07 10:36:49 -08:00
2022-01-12 16:14:36 -08:00
2021-12-23 09:42:47 -08:00
2022-05-04 11:33:42 -07:00
2022-03-23 08:51:00 -07:00
2022-01-26 11:38:52 -08:00
2019-06-19 09:48:12 -07:00
2020-10-08 20:10:13 -07:00
2022-03-15 15:13:42 -07:00
2022-01-14 15:37:55 -08:00
2020-07-29 16:35:33 -07:00
2022-05-13 10:15:47 -07:00
2021-12-23 09:42:47 -08:00
2022-03-15 15:13:42 -07:00
2020-06-18 12:21:25 -07:00
2022-03-15 15:13:42 -07:00
2022-01-26 11:38:52 -08:00
2022-04-25 17:25:42 -07:00
2022-02-18 09:34:03 -08:00
2022-04-26 10:44:21 -07:00
2022-03-15 15:13:42 -07:00
2022-05-18 10:25:33 -07:00
2022-05-20 10:36:14 -07:00
2022-03-15 15:13:42 -07:00
2019-10-09 10:36:03 -07:00
2018-06-06 09:35:59 -07:00
2018-06-06 09:35:59 -07:00
2022-03-23 08:51:00 -07:00
2019-03-21 12:47:57 -07:00
2019-10-09 10:36:03 -07:00
2022-01-26 11:38:52 -08:00
2020-11-13 13:51:51 -08:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-03-23 08:51:00 -07:00
2022-03-15 15:13:42 -07:00
2022-01-26 11:38:52 -08:00
2021-12-23 09:42:47 -08:00
2022-01-26 11:38:52 -08:00
2020-08-17 15:40:17 -07:00
2019-07-12 09:31:20 -07:00
2019-07-12 09:31:20 -07:00
2020-08-17 15:40:17 -07:00
2020-07-25 20:09:50 -07:00
2020-08-17 15:40:17 -07:00
2020-11-13 13:51:51 -08:00
2020-08-17 15:40:17 -07:00
2020-07-28 13:02:49 -07:00
2022-02-15 08:58:59 -08:00
2020-08-17 15:40:17 -07:00
2020-07-25 20:09:50 -07:00
2022-01-14 15:37:55 -08:00
2022-03-15 15:13:42 -07:00
2022-03-23 08:51:00 -07:00
2022-04-26 10:44:21 -07:00
2020-11-13 13:51:51 -08:00
2022-03-23 08:51:00 -07:00
2022-04-26 10:44:21 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2022-02-20 19:20:00 -08:00
2018-02-08 15:29:24 -08:00
2022-01-14 15:37:55 -08:00
2020-02-14 13:41:42 -08:00
2022-01-14 15:37:55 -08:00
2022-01-26 11:38:52 -08:00
2022-04-25 17:25:42 -07:00
2022-02-18 09:34:03 -08:00
2022-03-15 15:13:42 -07:00
2021-12-06 18:19:13 -07:00
2022-04-25 17:25:42 -07:00
2022-03-15 15:13:42 -07:00
2021-07-10 19:00:37 -06:00
2020-06-09 10:41:01 -07:00
2018-03-04 17:34:51 -08:00
2022-03-15 15:13:42 -07:00
2020-07-06 11:53:31 -07:00
2022-03-15 15:13:42 -07:00
2022-05-03 13:23:26 -07:00
2022-03-15 15:13:42 -07:00
2022-03-15 15:13:42 -07:00
2021-12-23 09:42:47 -08:00
2022-03-13 13:18:17 -07:00
2022-05-20 10:36:14 -07:00
2020-06-18 12:21:25 -07:00
2020-06-18 12:21:18 -07:00
2022-03-23 08:51:00 -07:00
2022-05-02 11:01:26 -07:00