Lines Matching refs:nsblk
37 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in namespace_blk_release() local
40 if (nsblk->id >= 0) in namespace_blk_release()
41 ida_simple_remove(&nd_region->ns_ida, nsblk->id); in namespace_blk_release()
42 kfree(nsblk->alt_name); in namespace_blk_release()
43 kfree(nsblk->uuid); in namespace_blk_release()
44 kfree(nsblk->res); in namespace_blk_release()
45 kfree(nsblk); in namespace_blk_release()
61 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in is_uuid_busy() local
63 uuid2 = nsblk->uuid; in is_uuid_busy()
182 struct nd_namespace_blk *nsblk; in nvdimm_namespace_disk_name() local
184 nsblk = to_nd_namespace_blk(&ndns->dev); in nvdimm_namespace_disk_name()
185 sprintf(name, "ndblk%d.%d%s", nd_region->id, nsblk->id, in nvdimm_namespace_disk_name()
207 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in nd_dev_to_uuid() local
209 return nsblk->uuid; in nd_dev_to_uuid()
235 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in __alt_name_store() local
237 ns_altname = &nsblk->alt_name; in __alt_name_store()
269 static resource_size_t nd_namespace_blk_size(struct nd_namespace_blk *nsblk) in nd_namespace_blk_size() argument
271 struct nd_region *nd_region = to_nd_region(nsblk->common.dev.parent); in nd_namespace_blk_size()
278 if (!nsblk->uuid) in nd_namespace_blk_size()
280 nd_label_gen_id(&label_id, nsblk->uuid, NSLABEL_FLAG_LOCAL); in nd_namespace_blk_size()
287 static bool __nd_namespace_blk_validate(struct nd_namespace_blk *nsblk) in __nd_namespace_blk_validate() argument
289 struct nd_region *nd_region = to_nd_region(nsblk->common.dev.parent); in __nd_namespace_blk_validate()
296 if (!nsblk->uuid || !nsblk->lbasize || !ndd) in __nd_namespace_blk_validate()
300 nd_label_gen_id(&label_id, nsblk->uuid, NSLABEL_FLAG_LOCAL); in __nd_namespace_blk_validate()
314 if (count != nsblk->num_resources) in __nd_namespace_blk_validate()
317 for (i = 0; i < nsblk->num_resources; i++) { in __nd_namespace_blk_validate()
321 if (res == nsblk->res[i]) { in __nd_namespace_blk_validate()
333 resource_size_t nd_namespace_blk_validate(struct nd_namespace_blk *nsblk) in nd_namespace_blk_validate() argument
337 nvdimm_bus_lock(&nsblk->common.dev); in nd_namespace_blk_validate()
338 size = __nd_namespace_blk_validate(nsblk); in nd_namespace_blk_validate()
339 nvdimm_bus_unlock(&nsblk->common.dev); in nd_namespace_blk_validate()
369 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in nd_namespace_label_update() local
370 resource_size_t size = nd_namespace_blk_size(nsblk); in nd_namespace_label_update()
372 if (size == 0 && nsblk->uuid) in nd_namespace_label_update()
374 else if (!nsblk->uuid || !nsblk->lbasize) in nd_namespace_label_update()
377 return nd_blk_namespace_label_update(nd_region, nsblk, size); in nd_namespace_label_update()
411 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in alt_name_show() local
413 ns_altname = nsblk->alt_name; in alt_name_show()
971 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in __size_store() local
973 uuid = nsblk->uuid; in __size_store()
975 id = nsblk->id; in __size_store()
1072 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in size_store() local
1074 uuid = &nsblk->uuid; in size_store()
1157 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in namespace_to_uuid() local
1159 return nsblk->uuid; in namespace_to_uuid()
1263 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in uuid_store() local
1265 ns_uuid = &nsblk->uuid; in uuid_store()
1323 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in sector_size_show() local
1325 return nd_size_select_show(nsblk->lbasize, in sector_size_show()
1347 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in sector_size_store() local
1349 lbasize = &nsblk->lbasize; in sector_size_store()
1392 struct nd_namespace_blk *nsblk = to_nd_namespace_blk(dev); in dpa_extents_show() local
1394 uuid = nsblk->uuid; in dpa_extents_show()
1771 struct nd_namespace_blk *nsblk; in nvdimm_namespace_common_probe() local
1773 nsblk = to_nd_namespace_blk(&ndns->dev); in nvdimm_namespace_common_probe()
1774 if (uuid_not_set(nsblk->uuid, &ndns->dev, __func__)) in nvdimm_namespace_common_probe()
1776 if (!nsblk->lbasize) { in nvdimm_namespace_common_probe()
1780 if (!nd_namespace_blk_validate(nsblk)) in nvdimm_namespace_common_probe()
2081 struct nvdimm_drvdata *ndd, struct nd_namespace_blk *nsblk, in nsblk_add_resource() argument
2087 nd_label_gen_id(&label_id, nsblk->uuid, NSLABEL_FLAG_LOCAL); in nsblk_add_resource()
2088 res = krealloc(nsblk->res, in nsblk_add_resource()
2089 sizeof(void *) * (nsblk->num_resources + 1), in nsblk_add_resource()
2093 nsblk->res = (struct resource **) res; in nsblk_add_resource()
2097 nsblk->res[nsblk->num_resources++] = res; in nsblk_add_resource()
2105 struct nd_namespace_blk *nsblk; in nd_namespace_blk_create() local
2111 nsblk = kzalloc(sizeof(*nsblk), GFP_KERNEL); in nd_namespace_blk_create()
2112 if (!nsblk) in nd_namespace_blk_create()
2115 dev = &nsblk->common.dev; in nd_namespace_blk_create()
2117 nsblk->id = ida_simple_get(&nd_region->ns_ida, 0, 0, GFP_KERNEL); in nd_namespace_blk_create()
2118 if (nsblk->id < 0) { in nd_namespace_blk_create()
2119 kfree(nsblk); in nd_namespace_blk_create()
2122 dev_set_name(dev, "namespace%d.%d", nd_region->id, nsblk->id); in nd_namespace_blk_create()
2125 return &nsblk->common.dev; in nd_namespace_blk_create()
2263 struct nd_namespace_blk *nsblk; in create_namespace_blk() local
2284 nsblk = kzalloc(sizeof(*nsblk), GFP_KERNEL); in create_namespace_blk()
2285 if (!nsblk) in create_namespace_blk()
2287 dev = &nsblk->common.dev; in create_namespace_blk()
2290 nsblk->id = -1; in create_namespace_blk()
2291 nsblk->lbasize = __le64_to_cpu(nd_label->lbasize); in create_namespace_blk()
2292 nsblk->uuid = kmemdup(nd_label->uuid, NSLABEL_UUID_LEN, in create_namespace_blk()
2295 nsblk->common.claim_class in create_namespace_blk()
2297 if (!nsblk->uuid) in create_namespace_blk()
2301 nsblk->alt_name = kmemdup(name, NSLABEL_NAME_LEN, in create_namespace_blk()
2303 if (!nsblk->alt_name) in create_namespace_blk()
2306 res = nsblk_add_resource(nd_region, ndd, nsblk, in create_namespace_blk()
2420 struct nd_namespace_blk *nsblk; in scan_labels() local
2422 nsblk = kzalloc(sizeof(*nsblk), GFP_KERNEL); in scan_labels()
2423 if (!nsblk) in scan_labels()
2425 dev = &nsblk->common.dev; in scan_labels()
2638 struct nd_namespace_blk *nsblk; in nd_region_register_namespaces() local
2640 nsblk = to_nd_namespace_blk(dev); in nd_region_register_namespaces()
2643 nsblk->id = id; in nd_region_register_namespaces()