Lines Matching refs:zd

1527 static int zonefs_create_zgroup(struct zonefs_zone_data *zd,  in zonefs_create_zgroup()  argument
1530 struct super_block *sb = zd->sb; in zonefs_create_zgroup()
1540 if (!zd->nr_zones[type]) in zonefs_create_zgroup()
1561 end = zd->zones + bdev_nr_zones(sb->s_bdev); in zonefs_create_zgroup()
1562 for (zone = &zd->zones[1]; zone < end; zone = next) { in zonefs_create_zgroup()
1624 struct zonefs_zone_data *zd = data; in zonefs_get_zone_info_cb() local
1634 zd->nr_zones[ZONEFS_ZTYPE_CNV]++; in zonefs_get_zone_info_cb()
1639 zd->nr_zones[ZONEFS_ZTYPE_SEQ]++; in zonefs_get_zone_info_cb()
1642 zonefs_err(zd->sb, "Unsupported zone type 0x%x\n", in zonefs_get_zone_info_cb()
1647 memcpy(&zd->zones[idx], zone, sizeof(struct blk_zone)); in zonefs_get_zone_info_cb()
1652 static int zonefs_get_zone_info(struct zonefs_zone_data *zd) in zonefs_get_zone_info() argument
1654 struct block_device *bdev = zd->sb->s_bdev; in zonefs_get_zone_info()
1657 zd->zones = kvcalloc(bdev_nr_zones(bdev), sizeof(struct blk_zone), in zonefs_get_zone_info()
1659 if (!zd->zones) in zonefs_get_zone_info()
1664 zonefs_get_zone_info_cb, zd); in zonefs_get_zone_info()
1666 zonefs_err(zd->sb, "Zone report failed %d\n", ret); in zonefs_get_zone_info()
1671 zonefs_err(zd->sb, "Invalid zone report (%d/%u zones)\n", in zonefs_get_zone_info()
1679 static inline void zonefs_cleanup_zone_info(struct zonefs_zone_data *zd) in zonefs_cleanup_zone_info() argument
1681 kvfree(zd->zones); in zonefs_cleanup_zone_info()
1773 struct zonefs_zone_data zd; in zonefs_fill_super() local
1826 memset(&zd, 0, sizeof(struct zonefs_zone_data)); in zonefs_fill_super()
1827 zd.sb = sb; in zonefs_fill_super()
1828 ret = zonefs_get_zone_info(&zd); in zonefs_fill_super()
1865 ret = zonefs_create_zgroup(&zd, t); in zonefs_fill_super()
1871 zonefs_cleanup_zone_info(&zd); in zonefs_fill_super()