Lines Matching refs:zd
856 struct zonefs_zone_data *zd = data; in zonefs_get_zone_info_cb() local
857 struct super_block *sb = zd->sb; in zonefs_get_zone_info_cb()
878 zone->start != zd->cnv_zone_start) in zonefs_get_zone_info_cb()
880 zd->cnv_zone_start = zone->start + zone->len; in zonefs_get_zone_info_cb()
891 zonefs_err(zd->sb, "Unsupported zone type 0x%x\n", in zonefs_get_zone_info_cb()
896 memcpy(&zd->zones[idx], zone, sizeof(struct blk_zone)); in zonefs_get_zone_info_cb()
901 static int zonefs_get_zone_info(struct zonefs_zone_data *zd) in zonefs_get_zone_info() argument
903 struct block_device *bdev = zd->sb->s_bdev; in zonefs_get_zone_info()
906 zd->zones = kvcalloc(bdev_nr_zones(bdev), sizeof(struct blk_zone), in zonefs_get_zone_info()
908 if (!zd->zones) in zonefs_get_zone_info()
913 zonefs_get_zone_info_cb, zd); in zonefs_get_zone_info()
915 zonefs_err(zd->sb, "Zone report failed %d\n", ret); in zonefs_get_zone_info()
920 zonefs_err(zd->sb, "Invalid zone report (%d/%u zones)\n", in zonefs_get_zone_info()
928 static inline void zonefs_free_zone_info(struct zonefs_zone_data *zd) in zonefs_free_zone_info() argument
930 kvfree(zd->zones); in zonefs_free_zone_info()
937 struct zonefs_zone_data *zd, in zonefs_init_zgroup() argument
961 end = zd->zones + bdev_nr_zones(sb->s_bdev); in zonefs_init_zgroup()
962 for (zone = &zd->zones[1]; zone < end; zone = next) { in zonefs_init_zgroup()
1076 struct zonefs_zone_data zd; in zonefs_init_zgroups() local
1081 memset(&zd, 0, sizeof(struct zonefs_zone_data)); in zonefs_init_zgroups()
1082 zd.sb = sb; in zonefs_init_zgroups()
1083 ret = zonefs_get_zone_info(&zd); in zonefs_init_zgroups()
1089 ret = zonefs_init_zgroup(sb, &zd, ztype); in zonefs_init_zgroups()
1099 zonefs_free_zone_info(&zd); in zonefs_init_zgroups()