Lines Matching refs:rr_col

385 		raidz_col_t *rc = &rr->rr_col[c];  in vdev_raidz_row_free()
396 kmem_free(rr, offsetof(raidz_row_t, rr_col[rr->rr_scols])); in vdev_raidz_row_free()
444 kmem_zalloc(offsetof(raidz_row_t, rr_col[cols]), KM_SLEEP); in vdev_raidz_row_alloc()
450 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_row_alloc()
499 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_write()
521 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_write()
565 rr->rr_col[c].rc_abd = in vdev_raidz_map_alloc_read()
566 abd_alloc_linear(rr->rr_col[c].rc_size, B_FALSE); in vdev_raidz_map_alloc_read()
569 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_read()
650 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc()
695 ASSERT(rr->rr_col[0].rc_size == rr->rr_col[1].rc_size); in vdev_raidz_map_alloc()
698 uint64_t devidx = rr->rr_col[0].rc_devidx; in vdev_raidz_map_alloc()
699 o = rr->rr_col[0].rc_offset; in vdev_raidz_map_alloc()
700 rr->rr_col[0].rc_devidx = rr->rr_col[1].rc_devidx; in vdev_raidz_map_alloc()
701 rr->rr_col[0].rc_offset = rr->rr_col[1].rc_offset; in vdev_raidz_map_alloc()
702 rr->rr_col[1].rc_devidx = devidx; in vdev_raidz_map_alloc()
703 rr->rr_col[1].rc_offset = o; in vdev_raidz_map_alloc()
841 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_expanded()
926 ASSERT(rr->rr_col[0].rc_size == rr->rr_col[1].rc_size); in vdev_raidz_map_alloc_expanded()
928 int devidx0 = rr->rr_col[0].rc_devidx; in vdev_raidz_map_alloc_expanded()
929 uint64_t offset0 = rr->rr_col[0].rc_offset; in vdev_raidz_map_alloc_expanded()
930 int shadow_devidx0 = rr->rr_col[0].rc_shadow_devidx; in vdev_raidz_map_alloc_expanded()
932 rr->rr_col[0].rc_shadow_offset; in vdev_raidz_map_alloc_expanded()
934 rr->rr_col[0].rc_devidx = rr->rr_col[1].rc_devidx; in vdev_raidz_map_alloc_expanded()
935 rr->rr_col[0].rc_offset = rr->rr_col[1].rc_offset; in vdev_raidz_map_alloc_expanded()
936 rr->rr_col[0].rc_shadow_devidx = in vdev_raidz_map_alloc_expanded()
937 rr->rr_col[1].rc_shadow_devidx; in vdev_raidz_map_alloc_expanded()
938 rr->rr_col[0].rc_shadow_offset = in vdev_raidz_map_alloc_expanded()
939 rr->rr_col[1].rc_shadow_offset; in vdev_raidz_map_alloc_expanded()
941 rr->rr_col[1].rc_devidx = devidx0; in vdev_raidz_map_alloc_expanded()
942 rr->rr_col[1].rc_offset = offset0; in vdev_raidz_map_alloc_expanded()
943 rr->rr_col[1].rc_shadow_devidx = shadow_devidx0; in vdev_raidz_map_alloc_expanded()
944 rr->rr_col[1].rc_shadow_offset = shadow_offset0; in vdev_raidz_map_alloc_expanded()
967 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_expanded()
1021 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_expanded()
1038 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_map_alloc_expanded()
1115 uint64_t *p = abd_to_buf(rr->rr_col[VDEV_RAIDZ_P].rc_abd); in vdev_raidz_generate_parity_p()
1118 abd_t *src = rr->rr_col[c].rc_abd; in vdev_raidz_generate_parity_p()
1121 abd_copy_to_buf(p, src, rr->rr_col[c].rc_size); in vdev_raidz_generate_parity_p()
1124 (void) abd_iterate_func(src, 0, rr->rr_col[c].rc_size, in vdev_raidz_generate_parity_p()
1133 uint64_t *p = abd_to_buf(rr->rr_col[VDEV_RAIDZ_P].rc_abd); in vdev_raidz_generate_parity_pq()
1134 uint64_t *q = abd_to_buf(rr->rr_col[VDEV_RAIDZ_Q].rc_abd); in vdev_raidz_generate_parity_pq()
1135 uint64_t pcnt = rr->rr_col[VDEV_RAIDZ_P].rc_size / sizeof (p[0]); in vdev_raidz_generate_parity_pq()
1136 ASSERT(rr->rr_col[VDEV_RAIDZ_P].rc_size == in vdev_raidz_generate_parity_pq()
1137 rr->rr_col[VDEV_RAIDZ_Q].rc_size); in vdev_raidz_generate_parity_pq()
1140 abd_t *src = rr->rr_col[c].rc_abd; in vdev_raidz_generate_parity_pq()
1142 uint64_t ccnt = rr->rr_col[c].rc_size / sizeof (p[0]); in vdev_raidz_generate_parity_pq()
1146 abd_copy_to_buf(p, src, rr->rr_col[c].rc_size); in vdev_raidz_generate_parity_pq()
1147 (void) memcpy(q, p, rr->rr_col[c].rc_size); in vdev_raidz_generate_parity_pq()
1157 (void) abd_iterate_func(src, 0, rr->rr_col[c].rc_size, in vdev_raidz_generate_parity_pq()
1175 uint64_t *p = abd_to_buf(rr->rr_col[VDEV_RAIDZ_P].rc_abd); in vdev_raidz_generate_parity_pqr()
1176 uint64_t *q = abd_to_buf(rr->rr_col[VDEV_RAIDZ_Q].rc_abd); in vdev_raidz_generate_parity_pqr()
1177 uint64_t *r = abd_to_buf(rr->rr_col[VDEV_RAIDZ_R].rc_abd); in vdev_raidz_generate_parity_pqr()
1178 uint64_t pcnt = rr->rr_col[VDEV_RAIDZ_P].rc_size / sizeof (p[0]); in vdev_raidz_generate_parity_pqr()
1179 ASSERT(rr->rr_col[VDEV_RAIDZ_P].rc_size == in vdev_raidz_generate_parity_pqr()
1180 rr->rr_col[VDEV_RAIDZ_Q].rc_size); in vdev_raidz_generate_parity_pqr()
1181 ASSERT(rr->rr_col[VDEV_RAIDZ_P].rc_size == in vdev_raidz_generate_parity_pqr()
1182 rr->rr_col[VDEV_RAIDZ_R].rc_size); in vdev_raidz_generate_parity_pqr()
1185 abd_t *src = rr->rr_col[c].rc_abd; in vdev_raidz_generate_parity_pqr()
1187 uint64_t ccnt = rr->rr_col[c].rc_size / sizeof (p[0]); in vdev_raidz_generate_parity_pqr()
1191 abd_copy_to_buf(p, src, rr->rr_col[c].rc_size); in vdev_raidz_generate_parity_pqr()
1192 (void) memcpy(q, p, rr->rr_col[c].rc_size); in vdev_raidz_generate_parity_pqr()
1193 (void) memcpy(r, p, rr->rr_col[c].rc_size); in vdev_raidz_generate_parity_pqr()
1204 (void) abd_iterate_func(src, 0, rr->rr_col[c].rc_size, in vdev_raidz_generate_parity_pqr()
1394 ASSERT3U(rr->rr_col[x].rc_size, <=, rr->rr_col[VDEV_RAIDZ_P].rc_size); in vdev_raidz_reconstruct_p()
1396 src = rr->rr_col[VDEV_RAIDZ_P].rc_abd; in vdev_raidz_reconstruct_p()
1397 dst = rr->rr_col[x].rc_abd; in vdev_raidz_reconstruct_p()
1399 abd_copy_from_buf(dst, abd_to_buf(src), rr->rr_col[x].rc_size); in vdev_raidz_reconstruct_p()
1402 uint64_t size = MIN(rr->rr_col[x].rc_size, in vdev_raidz_reconstruct_p()
1403 rr->rr_col[c].rc_size); in vdev_raidz_reconstruct_p()
1405 src = rr->rr_col[c].rc_abd; in vdev_raidz_reconstruct_p()
1427 ASSERT(rr->rr_col[x].rc_size <= rr->rr_col[VDEV_RAIDZ_Q].rc_size); in vdev_raidz_reconstruct_q()
1430 uint64_t size = (c == x) ? 0 : MIN(rr->rr_col[x].rc_size, in vdev_raidz_reconstruct_q()
1431 rr->rr_col[c].rc_size); in vdev_raidz_reconstruct_q()
1433 src = rr->rr_col[c].rc_abd; in vdev_raidz_reconstruct_q()
1434 dst = rr->rr_col[x].rc_abd; in vdev_raidz_reconstruct_q()
1438 if (rr->rr_col[x].rc_size > size) { in vdev_raidz_reconstruct_q()
1440 rr->rr_col[x].rc_size - size); in vdev_raidz_reconstruct_q()
1443 ASSERT3U(size, <=, rr->rr_col[x].rc_size); in vdev_raidz_reconstruct_q()
1447 size, rr->rr_col[x].rc_size - size, in vdev_raidz_reconstruct_q()
1452 src = rr->rr_col[VDEV_RAIDZ_Q].rc_abd; in vdev_raidz_reconstruct_q()
1453 dst = rr->rr_col[x].rc_abd; in vdev_raidz_reconstruct_q()
1457 (void) abd_iterate_func(dst, 0, rr->rr_col[x].rc_size, in vdev_raidz_reconstruct_q()
1479 ASSERT(rr->rr_col[x].rc_size >= rr->rr_col[y].rc_size); in vdev_raidz_reconstruct_pq()
1488 pdata = rr->rr_col[VDEV_RAIDZ_P].rc_abd; in vdev_raidz_reconstruct_pq()
1489 qdata = rr->rr_col[VDEV_RAIDZ_Q].rc_abd; in vdev_raidz_reconstruct_pq()
1490 xsize = rr->rr_col[x].rc_size; in vdev_raidz_reconstruct_pq()
1491 ysize = rr->rr_col[y].rc_size; in vdev_raidz_reconstruct_pq()
1493 rr->rr_col[VDEV_RAIDZ_P].rc_abd = in vdev_raidz_reconstruct_pq()
1494 abd_alloc_linear(rr->rr_col[VDEV_RAIDZ_P].rc_size, B_TRUE); in vdev_raidz_reconstruct_pq()
1495 rr->rr_col[VDEV_RAIDZ_Q].rc_abd = in vdev_raidz_reconstruct_pq()
1496 abd_alloc_linear(rr->rr_col[VDEV_RAIDZ_Q].rc_size, B_TRUE); in vdev_raidz_reconstruct_pq()
1497 rr->rr_col[x].rc_size = 0; in vdev_raidz_reconstruct_pq()
1498 rr->rr_col[y].rc_size = 0; in vdev_raidz_reconstruct_pq()
1502 rr->rr_col[x].rc_size = xsize; in vdev_raidz_reconstruct_pq()
1503 rr->rr_col[y].rc_size = ysize; in vdev_raidz_reconstruct_pq()
1507 pxy = abd_to_buf(rr->rr_col[VDEV_RAIDZ_P].rc_abd); in vdev_raidz_reconstruct_pq()
1508 qxy = abd_to_buf(rr->rr_col[VDEV_RAIDZ_Q].rc_abd); in vdev_raidz_reconstruct_pq()
1509 xd = rr->rr_col[x].rc_abd; in vdev_raidz_reconstruct_pq()
1510 yd = rr->rr_col[y].rc_abd; in vdev_raidz_reconstruct_pq()
1542 abd_free(rr->rr_col[VDEV_RAIDZ_P].rc_abd); in vdev_raidz_reconstruct_pq()
1543 abd_free(rr->rr_col[VDEV_RAIDZ_Q].rc_abd); in vdev_raidz_reconstruct_pq()
1548 rr->rr_col[VDEV_RAIDZ_P].rc_abd = pdata; in vdev_raidz_reconstruct_pq()
1549 rr->rr_col[VDEV_RAIDZ_Q].rc_abd = qdata; in vdev_raidz_reconstruct_pq()
1863 ccount = rr->rr_col[c].rc_size; in vdev_raidz_matrix_reconstruct()
1864 ASSERT(ccount >= rr->rr_col[missing[0]].rc_size || i > 0); in vdev_raidz_matrix_reconstruct()
1867 src = abd_to_buf(rr->rr_col[c].rc_abd); in vdev_raidz_matrix_reconstruct()
1874 dcount[j] = rr->rr_col[cc].rc_size; in vdev_raidz_matrix_reconstruct()
1876 dst[j] = abd_to_buf(rr->rr_col[cc].rc_abd); in vdev_raidz_matrix_reconstruct()
1929 ASSERT(rr->rr_col[i].rc_abd != NULL); in vdev_raidz_reconstruct_general()
1930 if (!abd_is_linear(rr->rr_col[i].rc_abd)) { in vdev_raidz_reconstruct_general()
1935 raidz_col_t *col = &rr->rr_col[c]; in vdev_raidz_reconstruct_general()
2035 raidz_col_t *col = &rr->rr_col[c]; in vdev_raidz_reconstruct_general()
2070 rr, c, (int)rr->rr_col[c].rc_devidx, in vdev_raidz_reconstruct_row()
2071 (long long)rr->rr_col[c].rc_offset, in vdev_raidz_reconstruct_row()
2072 (int)rr->rr_col[c].rc_error); in vdev_raidz_reconstruct_row()
2080 } else if (rr->rr_col[c].rc_error != 0) { in vdev_raidz_reconstruct_row()
2350 raidz_col_t *rc = &rr->rr_col[col]; in vdev_raidz_io_verify()
2389 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_start_write()
2436 raidz_col_t *rc = &rr->rr_col[c]; in raidz_start_skip_writes()
2461 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_start_read_row()
2728 rc = &rr->rr_col[c]; in raidz_parity_verify()
2752 rc = &rr->rr_col[c]; in raidz_parity_verify()
2776 error = zio_worst_error(error, rr->rr_col[c].rc_error); in vdev_raidz_worst_error()
2777 error = zio_worst_error(error, rr->rr_col[c].rc_shadow_error); in vdev_raidz_worst_error()
2794 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_verified()
2833 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_verified()
2873 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_verified()
2906 raidz_col_t *rc = &rr->rr_col[c]; in raidz_restore_orig_data()
2984 raidz_col_t *rc = &rr->rr_col[c]; in raidz_reconstruct()
3059 raidz_col_t *rc = &rr->rr_col[c]; in raidz_reconstruct()
3166 if (rr->rr_col[c].rc_error) in vdev_raidz_combrec()
3286 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_write_impl()
3331 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_reconstruct_known_missing()
3381 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_reconstruct_known_missing()
3415 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_read_all()
3444 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done_unrecoverable()
3483 raidz_col_t *rc = &rr->rr_col[c]; in vdev_raidz_io_done()