Lines Matching defs:dsaddr
45 nfs4_fl_free_deviceid(struct nfs4_file_layout_dsaddr *dsaddr)
50 nfs4_print_deviceid(&dsaddr->id_node.deviceid);
52 for (i = 0; i < dsaddr->ds_num; i++) {
53 ds = dsaddr->ds_list[i];
57 kfree(dsaddr->stripe_indices);
58 kfree_rcu(dsaddr, id_node.rcu);
72 struct nfs4_file_layout_dsaddr *dsaddr = NULL;
139 dsaddr = kzalloc(struct_size(dsaddr, ds_list, num), gfp_flags);
140 if (!dsaddr)
143 dsaddr->stripe_count = cnt;
144 dsaddr->stripe_indices = stripe_indices;
146 dsaddr->ds_num = num;
147 nfs4_init_deviceid_node(&dsaddr->id_node, server, &pdev->dev_id);
151 for (i = 0; i < dsaddr->ds_num; i++) {
172 dsaddr->ds_list[i] = nfs4_pnfs_ds_add(&dsaddrs, gfp_flags);
173 if (!dsaddr->ds_list[i])
188 return dsaddr;
199 nfs4_fl_free_deviceid(dsaddr);
200 /* stripe_indicies was part of dsaddr */
212 nfs4_fl_put_deviceid(struct nfs4_file_layout_dsaddr *dsaddr)
214 nfs4_put_deviceid_node(&dsaddr->id_node);
219 * Then: ((res + fsi) % dsaddr->stripe_count)
230 return do_div(tmp, flseg->dsaddr->stripe_count);
236 return FILELAYOUT_LSEG(lseg)->dsaddr->stripe_indices[j];
262 struct nfs4_file_layout_dsaddr *dsaddr = FILELAYOUT_LSEG(lseg)->dsaddr;
263 struct nfs4_pnfs_ds *ds = dsaddr->ds_list[ds_idx];