Lines Matching refs:nd_btt
30 return &arena->nd_btt->dev; in to_dev()
33 static u64 adjust_initial_offset(struct nd_btt *nd_btt, u64 offset) in adjust_initial_offset() argument
35 return offset + nd_btt->initial_offset; in adjust_initial_offset()
41 struct nd_btt *nd_btt = arena->nd_btt; in arena_read_bytes() local
42 struct nd_namespace_common *ndns = nd_btt->ndns; in arena_read_bytes()
45 offset = adjust_initial_offset(nd_btt, offset); in arena_read_bytes()
52 struct nd_btt *nd_btt = arena->nd_btt; in arena_write_bytes() local
53 struct nd_namespace_common *ndns = nd_btt->ndns; in arena_write_bytes()
56 offset = adjust_initial_offset(nd_btt, offset); in arena_write_bytes()
261 btt->debugfs_dir = debugfs_create_dir(dev_name(&btt->nd_btt->dev), in btt_debugfs_init()
756 arena->nd_btt = btt->nd_btt; in alloc_arena()
769 arena->version_major = btt->nd_btt->version_major; in alloc_arena()
770 arena->version_minor = btt->nd_btt->version_minor; in alloc_arena()
874 if (!nd_btt_arena_is_valid(btt->nd_btt, super)) { in discover_arenas()
975 struct nd_btt *nd_btt = arena->nd_btt; in btt_arena_write_layout() local
976 const u8 *parent_uuid = nd_dev_to_uuid(&nd_btt->ndns->dev); in btt_arena_write_layout()
991 memcpy(super->uuid, nd_btt->uuid, 16); in btt_arena_write_layout()
1304 u64 nsoff = adjust_initial_offset(arena->nd_btt, in btt_is_badblock()
1464 dev_err_ratelimited(&btt->nd_btt->dev, in btt_submit_bio()
1473 dev_err(&btt->nd_btt->dev, in btt_submit_bio()
1521 struct nd_btt *nd_btt = btt->nd_btt; in btt_blk_init() local
1522 struct nd_namespace_common *ndns = nd_btt->ndns; in btt_blk_init()
1547 device_add_disk(&btt->nd_btt->dev, btt->btt_disk, NULL); in btt_blk_init()
1548 btt->nd_btt->size = btt->nlba * (u64)btt->sector_size; in btt_blk_init()
1577 static struct btt *btt_init(struct nd_btt *nd_btt, unsigned long long rawsize, in btt_init() argument
1583 struct device *dev = &nd_btt->dev; in btt_init()
1589 btt->nd_btt = nd_btt; in btt_init()
1596 nsio = to_nd_namespace_io(&nd_btt->ndns->dev); in btt_init()
1659 struct nd_btt *nd_btt = to_nd_btt(ndns->claim); in nvdimm_namespace_attach_btt() local
1666 if (!nd_btt->uuid || !nd_btt->ndns || !nd_btt->lbasize) { in nvdimm_namespace_attach_btt()
1667 dev_dbg(&nd_btt->dev, "incomplete btt configuration\n"); in nvdimm_namespace_attach_btt()
1671 btt_sb = devm_kzalloc(&nd_btt->dev, sizeof(*btt_sb), GFP_KERNEL); in nvdimm_namespace_attach_btt()
1676 rc = devm_namespace_enable(&nd_btt->dev, ndns, size); in nvdimm_namespace_attach_btt()
1686 nd_btt_version(nd_btt, ndns, btt_sb); in nvdimm_namespace_attach_btt()
1688 rawsize = size - nd_btt->initial_offset; in nvdimm_namespace_attach_btt()
1690 dev_dbg(&nd_btt->dev, "%s must be at least %ld bytes\n", in nvdimm_namespace_attach_btt()
1692 ARENA_MIN_SIZE + nd_btt->initial_offset); in nvdimm_namespace_attach_btt()
1695 nd_region = to_nd_region(nd_btt->dev.parent); in nvdimm_namespace_attach_btt()
1696 btt = btt_init(nd_btt, rawsize, nd_btt->lbasize, nd_btt->uuid, in nvdimm_namespace_attach_btt()
1700 nd_btt->btt = btt; in nvdimm_namespace_attach_btt()
1706 int nvdimm_namespace_detach_btt(struct nd_btt *nd_btt) in nvdimm_namespace_detach_btt() argument
1708 struct btt *btt = nd_btt->btt; in nvdimm_namespace_detach_btt()
1711 nd_btt->btt = NULL; in nvdimm_namespace_detach_btt()