Lines Matching refs:mirror_array
253 if (fls->mirror_array) { in ff_layout_free_mirror_array()
258 ff_layout_put_mirror(fls->mirror_array[i]); in ff_layout_free_mirror_array()
260 kfree(fls->mirror_array); in ff_layout_free_mirror_array()
261 fls->mirror_array = NULL; in ff_layout_free_mirror_array()
356 if (fls->mirror_array[i]->efficiency < in ff_layout_sort_mirrors()
357 fls->mirror_array[j]->efficiency) in ff_layout_sort_mirrors()
358 swap(fls->mirror_array[i], in ff_layout_sort_mirrors()
359 fls->mirror_array[j]); in ff_layout_sort_mirrors()
409 fls->mirror_array = kcalloc(fls->mirror_array_cnt, in ff_layout_alloc_lseg()
410 sizeof(fls->mirror_array[0]), gfp_flags); in ff_layout_alloc_lseg()
411 if (fls->mirror_array == NULL) in ff_layout_alloc_lseg()
433 fls->mirror_array[i] = ff_layout_alloc_mirror(gfp_flags); in ff_layout_alloc_lseg()
434 if (fls->mirror_array[i] == NULL) { in ff_layout_alloc_lseg()
439 fls->mirror_array[i]->ds_count = ds_count; in ff_layout_alloc_lseg()
442 rc = decode_deviceid(&stream, &fls->mirror_array[i]->devid); in ff_layout_alloc_lseg()
451 fls->mirror_array[i]->efficiency = be32_to_cpup(p); in ff_layout_alloc_lseg()
454 rc = decode_pnfs_stateid(&stream, &fls->mirror_array[i]->stateid); in ff_layout_alloc_lseg()
465 fls->mirror_array[i]->fh_versions = in ff_layout_alloc_lseg()
468 if (fls->mirror_array[i]->fh_versions == NULL) { in ff_layout_alloc_lseg()
475 &fls->mirror_array[i]->fh_versions[j]); in ff_layout_alloc_lseg()
480 fls->mirror_array[i]->fh_versions_cnt = fh_count; in ff_layout_alloc_lseg()
511 rcu_assign_pointer(fls->mirror_array[i]->ro_cred, cred); in ff_layout_alloc_lseg()
513 rcu_assign_pointer(fls->mirror_array[i]->rw_cred, cred); in ff_layout_alloc_lseg()
515 mirror = ff_layout_add_mirror(lh, fls->mirror_array[i]); in ff_layout_alloc_lseg()
516 if (mirror != fls->mirror_array[i]) { in ff_layout_alloc_lseg()
520 rcu_assign_pointer(fls->mirror_array[i]->ro_cred, cred); in ff_layout_alloc_lseg()
523 rcu_assign_pointer(fls->mirror_array[i]->rw_cred, cred); in ff_layout_alloc_lseg()
525 ff_layout_free_mirror(fls->mirror_array[i]); in ff_layout_alloc_lseg()
526 fls->mirror_array[i] = mirror; in ff_layout_alloc_lseg()
544 fls->mirror_array[i]->report_interval = be32_to_cpup(p); in ff_layout_alloc_lseg()
1927 return &flseg->mirror_array[i]->fh_versions[0]; in select_ds_fh_from_commit()