Lines Matching refs:d
30 bl_free_deviceid_node(struct nfs4_deviceid_node *d) in bl_free_deviceid_node() argument
33 container_of(d, struct pnfs_block_dev, node); in bl_free_deviceid_node()
183 bl_parse_deviceid(struct nfs_server *server, struct pnfs_block_dev *d,
188 bl_parse_simple(struct nfs_server *server, struct pnfs_block_dev *d, in bl_parse_simple() argument
198 d->bdev = blkdev_get_by_dev(dev, FMODE_READ, NULL); in bl_parse_simple()
199 if (IS_ERR(d->bdev)) { in bl_parse_simple()
201 MAJOR(dev), MINOR(dev), PTR_ERR(d->bdev)); in bl_parse_simple()
202 return PTR_ERR(d->bdev); in bl_parse_simple()
206 d->len = i_size_read(d->bdev->bd_inode); in bl_parse_simple()
207 d->map = bl_map_simple; in bl_parse_simple()
210 d->bdev->bd_disk->disk_name); in bl_parse_simple()
215 bl_parse_slice(struct nfs_server *server, struct pnfs_block_dev *d, in bl_parse_slice() argument
221 ret = bl_parse_deviceid(server, d, volumes, v->slice.volume, gfp_mask); in bl_parse_slice()
225 d->disk_offset = v->slice.start; in bl_parse_slice()
226 d->len = v->slice.len; in bl_parse_slice()
231 bl_parse_concat(struct nfs_server *server, struct pnfs_block_dev *d, in bl_parse_concat() argument
238 d->children = kcalloc(v->concat.volumes_count, in bl_parse_concat()
240 if (!d->children) in bl_parse_concat()
244 ret = bl_parse_deviceid(server, &d->children[i], in bl_parse_concat()
249 d->nr_children++; in bl_parse_concat()
250 d->children[i].start += len; in bl_parse_concat()
251 len += d->children[i].len; in bl_parse_concat()
254 d->len = len; in bl_parse_concat()
255 d->map = bl_map_concat; in bl_parse_concat()
260 bl_parse_stripe(struct nfs_server *server, struct pnfs_block_dev *d, in bl_parse_stripe() argument
267 d->children = kcalloc(v->stripe.volumes_count, in bl_parse_stripe()
269 if (!d->children) in bl_parse_stripe()
273 ret = bl_parse_deviceid(server, &d->children[i], in bl_parse_stripe()
278 d->nr_children++; in bl_parse_stripe()
279 len += d->children[i].len; in bl_parse_stripe()
282 d->len = len; in bl_parse_stripe()
283 d->chunk_size = v->stripe.chunk_size; in bl_parse_stripe()
284 d->map = bl_map_stripe; in bl_parse_stripe()
289 bl_parse_deviceid(struct nfs_server *server, struct pnfs_block_dev *d, in bl_parse_deviceid() argument
294 return bl_parse_simple(server, d, volumes, idx, gfp_mask); in bl_parse_deviceid()
296 return bl_parse_slice(server, d, volumes, idx, gfp_mask); in bl_parse_deviceid()
298 return bl_parse_concat(server, d, volumes, idx, gfp_mask); in bl_parse_deviceid()
300 return bl_parse_stripe(server, d, volumes, idx, gfp_mask); in bl_parse_deviceid()