/linux-6.3-rc2/drivers/nvdimm/ |
A D | claim.c | 19 if (!ndns) in __nd_detach_ndns() 25 ndns->claim = NULL; in __nd_detach_ndns() 27 put_device(&ndns->dev); in __nd_detach_ndns() 35 if (!ndns) in nd_detach_ndns() 37 get_device(&ndns->dev); in nd_detach_ndns() 38 nvdimm_bus_lock(&ndns->dev); in nd_detach_ndns() 41 put_device(&ndns->dev); in nd_detach_ndns() 160 ndns = *_ndns; in nd_namespace_store() 164 } else if (ndns) { in nd_namespace_store() 166 dev_name(&ndns->dev)); in nd_namespace_store() [all …]
|
A D | btt_devs.c | 21 nd_detach_ndns(&nd_btt->dev, &nd_btt->ndns); in nd_btt_release() 99 rc = sprintf(buf, "%s\n", nd_btt->ndns in namespace_show() 100 ? dev_name(&nd_btt->ndns->dev) : ""); in namespace_show() 211 if (ndns && !__nd_attach_ndns(&nd_btt->dev, ndns, &nd_btt->ndns)) { in __nd_btt_create() 213 dev_name(ndns->claim)); in __nd_btt_create() 315 if (!btt_sb || !ndns || !nd_btt) in __nd_btt_probe() 342 if (ndns->force_raw) in nd_btt_probe() 345 switch (ndns->claim_class) { in nd_btt_probe() 354 nvdimm_bus_lock(&ndns->dev); in nd_btt_probe() 356 nvdimm_bus_unlock(&ndns->dev); in nd_btt_probe() [all …]
|
A D | pfn_devs.c | 208 struct nd_namespace_common *ndns = nd_pfn->ndns; in resource_show() local 234 struct nd_namespace_common *ndns = nd_pfn->ndns; in size_show() local 311 if (ndns && !__nd_attach_ndns(&nd_pfn->dev, ndns, &nd_pfn->ndns)) { in nd_pfn_devinit() 313 dev_name(ndns->claim)); in nd_pfn_devinit() 367 struct nd_namespace_common *ndns = nd_pfn->ndns; in nd_pfn_clear_memmap_errors() local 458 struct nd_namespace_common *ndns = nd_pfn->ndns; in nd_pfn_validate() local 461 if (!pfn_sb || !ndns) in nd_pfn_validate() 589 dev_name(&ndns->dev)); in nd_pfn_validate() 625 if (ndns->force_raw) in nd_pfn_probe() 686 struct nd_namespace_common *ndns = nd_pfn->ndns; in __nvdimm_setup_pfn() local [all …]
|
A D | dax_devs.c | 20 nd_detach_ndns(dev, &nd_pfn->ndns); in nd_dax_release() 87 int nd_dax_probe(struct device *dev, struct nd_namespace_common *ndns) in nd_dax_probe() argument 94 struct nd_region *nd_region = to_nd_region(ndns->dev.parent); in nd_dax_probe() 96 if (ndns->force_raw) in nd_dax_probe() 99 switch (ndns->claim_class) { in nd_dax_probe() 107 nvdimm_bus_lock(&ndns->dev); in nd_dax_probe() 110 dax_dev = nd_pfn_devinit(nd_pfn, ndns); in nd_dax_probe() 111 nvdimm_bus_unlock(&ndns->dev); in nd_dax_probe() 119 nd_detach_ndns(dax_dev, &nd_pfn->ndns); in nd_dax_probe()
|
A D | namespace_devs.c | 102 if (ndns->force_raw) in pmem_should_map_pages() 144 if (ndns->claim && is_nd_btt(ndns->claim)) in nvdimm_namespace_disk_name() 147 if (is_namespace_pmem(&ndns->dev) || is_namespace_io(&ndns->dev)) { in nvdimm_namespace_disk_name() 1235 rc = sprintf(buf, "%s\n", ndns->claim ? dev_name(ndns->claim) : ""); in holder_show() 1438 ndns = nd_btt->ndns; in nvdimm_namespace_common_probe() 1440 ndns = nd_pfn->ndns; in nvdimm_namespace_common_probe() 1442 ndns = nd_dax->nd_pfn.ndns; in nvdimm_namespace_common_probe() 1444 if (!ndns) in nvdimm_namespace_common_probe() 1458 if (dev_WARN_ONCE(&ndns->dev, ndns->claim != dev, in nvdimm_namespace_common_probe() 1465 if (ndns->claim) { in nvdimm_namespace_common_probe() [all …]
|
A D | pmem.c | 494 dev_name(&ndns->dev))) { in pmem_attach_disk() 601 struct nd_namespace_common *ndns; in nd_pmem_probe() local 604 if (IS_ERR(ndns)) in nd_pmem_probe() 605 return PTR_ERR(ndns); in nd_pmem_probe() 617 ret = nd_btt_probe(dev, ndns); in nd_pmem_probe() 632 ret = nd_pfn_probe(dev, ndns); in nd_pmem_probe() 638 ret = nd_dax_probe(dev, ndns); in nd_pmem_probe() 676 struct nd_namespace_common *ndns; in pmem_revalidate_poison() local 685 ndns = nd_btt->ndns; in pmem_revalidate_poison() 701 ndns = nd_pfn->ndns; in pmem_revalidate_poison() [all …]
|
A D | nd.h | 450 struct nd_namespace_common *ndns; member 475 struct nd_namespace_common *ndns; member 543 int nd_btt_probe(struct device *dev, struct nd_namespace_common *ndns); 548 struct nd_namespace_common *ndns) in nd_btt_probe() argument 573 struct nd_namespace_common *ndns); 578 struct nd_namespace_common *ndns) in nd_pfn_probe() argument 606 struct nd_namespace_common *ndns) in nd_dax_probe() argument 639 bool nvdimm_namespace_locked(struct nd_namespace_common *ndns); 641 int nvdimm_namespace_attach_btt(struct nd_namespace_common *ndns); 645 unsigned int pmem_sector_size(struct nd_namespace_common *ndns); [all …]
|
A D | btt.c | 41 struct nd_namespace_common *ndns = nd_btt->ndns; in arena_read_bytes() local 45 return nvdimm_read_bytes(ndns, offset, buf, n, flags); in arena_read_bytes() 52 struct nd_namespace_common *ndns = nd_btt->ndns; in arena_write_bytes() local 56 return nvdimm_write_bytes(ndns, offset, buf, n, flags); in arena_write_bytes() 1503 struct nd_namespace_common *ndns = nd_btt->ndns; in btt_blk_init() local 1584 nsio = to_nd_namespace_io(&nd_btt->ndns->dev); in btt_init() 1647 struct nd_btt *nd_btt = to_nd_btt(ndns->claim); in nvdimm_namespace_attach_btt() 1663 size = nvdimm_namespace_capacity(ndns); in nvdimm_namespace_attach_btt() 1664 rc = devm_namespace_enable(&nd_btt->dev, ndns, size); in nvdimm_namespace_attach_btt() 1674 nd_btt_version(nd_btt, ndns, btt_sb); in nvdimm_namespace_attach_btt() [all …]
|
A D | bus.c | 955 struct nd_namespace_common *ndns = NULL; in nd_pmem_forget_poison_check() local 967 ndns = nd_btt->ndns; in nd_pmem_forget_poison_check() 969 ndns = nd_pfn->ndns; in nd_pmem_forget_poison_check() 971 ndns = nd_dax->nd_pfn.ndns; in nd_pmem_forget_poison_check() 973 if (!ndns) in nd_pmem_forget_poison_check() 976 ndns = to_ndns(dev); in nd_pmem_forget_poison_check() 978 nsio = to_nd_namespace_io(&ndns->dev); in nd_pmem_forget_poison_check()
|
A D | btt.h | 236 int nd_btt_version(struct nd_btt *nd_btt, struct nd_namespace_common *ndns,
|
A D | nd-core.h | 136 resource_size_t __nvdimm_namespace_capacity(struct nd_namespace_common *ndns);
|
A D | region_devs.c | 900 if (nd_region->ns_seed == &nd_btt->ndns->dev) in nd_region_advance_seeds() 907 if (nd_region->ns_seed == &nd_pfn->ndns->dev) in nd_region_advance_seeds() 914 if (nd_region->ns_seed == &nd_dax->nd_pfn.ndns->dev) in nd_region_advance_seeds()
|
A D | label.c | 877 struct nd_namespace_common *ndns = &nspm->nsio.common; in __pmem_label_update() local 925 nsl_set_claim_class(ndd, nd_label, ndns->claim_class); in __pmem_label_update()
|
/linux-6.3-rc2/drivers/dax/ |
A D | pmem.c | 21 struct nd_namespace_common *ndns; in __dax_pmem_probe() local 26 ndns = nvdimm_namespace_common_probe(dev); in __dax_pmem_probe() 27 if (IS_ERR(ndns)) in __dax_pmem_probe() 28 return ERR_CAST(ndns); in __dax_pmem_probe() 31 rc = devm_namespace_enable(dev, ndns, nd_info_block_reserve()); in __dax_pmem_probe() 37 devm_namespace_disable(dev, ndns); in __dax_pmem_probe() 42 nsio = to_nd_namespace_io(&ndns->dev); in __dax_pmem_probe() 44 dev_name(&ndns->dev))) { in __dax_pmem_probe() 49 rc = sscanf(dev_name(&ndns->dev), "namespace%d.%d", ®ion_id, &id); in __dax_pmem_probe()
|
/linux-6.3-rc2/include/linux/ |
A D | nd.h | 168 static inline int nvdimm_read_bytes(struct nd_namespace_common *ndns, in nvdimm_read_bytes() argument 172 return ndns->rw_bytes(ndns, offset, buf, size, READ, flags); in nvdimm_read_bytes() 187 static inline int nvdimm_write_bytes(struct nd_namespace_common *ndns, in nvdimm_write_bytes() argument 191 return ndns->rw_bytes(ndns, offset, buf, size, WRITE, flags); in nvdimm_write_bytes()
|
/linux-6.3-rc2/Documentation/driver-api/nvdimm/ |
A D | nvdimm.rst | 511 struct ndctl_namespace *ndns; 513 ndctl_namespace_foreach(region, ndns) 514 if (ndctl_namespace_get_id(ndns) == id) 515 return ndns; 532 struct ndctl_namespace *ndns, 540 ndctl_namespace_set_alt_name(ndns, devname); 542 ndctl_namespace_set_uuid(ndns, paramaters->uuid); 543 ndctl_namespace_set_size(ndns, paramaters->size); 547 ndctl_namespace_enable(ndns); 619 ndctl_btt_set_namespace(btt, parameters->ndns); [all …]
|