MCPcopy Create free account
hub / github.com/F-Stack/f-stack / vdev_draid_io_verify

Function vdev_draid_io_verify

freebsd/contrib/openzfs/module/zfs/vdev_draid.c:2016–2034  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2014}
2015
2016static void
2017vdev_draid_io_verify(vdev_t *vd, raidz_row_t *rr, int col)
2018{
2019#ifdef ZFS_DEBUG
2020 range_seg64_t logical_rs, physical_rs, remain_rs;
2021 logical_rs.rs_start = rr->rr_offset;
2022 logical_rs.rs_end = logical_rs.rs_start +
2023 vdev_draid_asize(vd, rr->rr_size);
2024
2025 raidz_col_t *rc = &rr->rr_col[col];
2026 vdev_t *cvd = vd->vdev_child[rc->rc_devidx];
2027
2028 vdev_xlate(cvd, &logical_rs, &physical_rs, &remain_rs);
2029 ASSERT(vdev_xlate_is_empty(&remain_rs));
2030 ASSERT3U(rc->rc_offset, ==, physical_rs.rs_start);
2031 ASSERT3U(rc->rc_offset, <, physical_rs.rs_end);
2032 ASSERT3U(rc->rc_offset + rc->rc_size, ==, physical_rs.rs_end);
2033#endif
2034}
2035
2036/*
2037 * For write operations:

Callers 1

Calls 3

vdev_xlateFunction · 0.85
vdev_xlate_is_emptyFunction · 0.85
vdev_draid_asizeFunction · 0.70

Tested by

no test coverage detected