Lines Matching +full:data +full:- +full:mirror
1 /* SPDX-License-Identifier: GPL-2.0 */
3 * NFSv4 flexfile layout driver data structures.
5 * Copyright (c) 2014, Primary Data, Inc. All rights reserved.
20 /* XXX: Let's filter out insanely large mirror count for now to avoid oom
45 struct list_head list; /* linked in mirror error_list */
147 if (idx < fls->mirror_array_cnt) in FF_LAYOUT_COMP()
148 return fls->mirror_array[idx]; in FF_LAYOUT_COMP()
155 struct nfs4_ff_layout_mirror *mirror = FF_LAYOUT_COMP(lseg, idx); in FF_LAYOUT_DEVID_NODE() local
157 if (mirror != NULL) { in FF_LAYOUT_DEVID_NODE()
158 struct nfs4_ff_layout_ds *mirror_ds = mirror->mirror_ds; in FF_LAYOUT_DEVID_NODE()
161 return &mirror_ds->id_node; in FF_LAYOUT_DEVID_NODE()
169 return FF_LAYOUT_LSEG(lseg)->mirror_array_cnt; in FF_LAYOUT_MIRROR_COUNT()
175 return FF_LAYOUT_LSEG(lseg)->flags & FF_FLAGS_NO_IO_THRU_MDS; in ff_layout_no_fallback_to_mds()
181 return FF_LAYOUT_LSEG(lseg)->flags & FF_FLAGS_NO_READ_IO; in ff_layout_no_read_on_rw()
185 nfs4_ff_layout_ds_version(const struct nfs4_ff_layout_mirror *mirror) in nfs4_ff_layout_ds_version() argument
187 return mirror->mirror_ds->ds_versions[0].version; in nfs4_ff_layout_ds_version()
196 struct nfs4_ff_layout_mirror *mirror, u64 offset,
207 nfs4_ff_layout_select_ds_fh(struct nfs4_ff_layout_mirror *mirror);
209 nfs4_ff_layout_select_ds_stateid(const struct nfs4_ff_layout_mirror *mirror,
214 struct nfs4_ff_layout_mirror *mirror,
218 nfs4_ff_find_or_create_ds_client(struct nfs4_ff_layout_mirror *mirror,
221 const struct cred *ff_layout_get_ds_cred(struct nfs4_ff_layout_mirror *mirror,