blk_zone
struct blk_zone zone;
static int blk_revalidate_zone_cond(struct blk_zone *zone, unsigned int idx,
static int blk_revalidate_conv_zone(struct blk_zone *zone, unsigned int idx,
static int blk_revalidate_seq_zone(struct blk_zone *zone, unsigned int idx,
static int blk_revalidate_zone_cb(struct blk_zone *zone, unsigned int idx,
struct blk_zone __user *zones;
static int blkdev_copy_zone_to_user(struct blk_zone *zone, unsigned int idx,
if (copy_to_user(&args->zones[idx], zone, sizeof(struct blk_zone)))
static bool disk_zone_is_last(struct gendisk *disk, struct blk_zone *zone)
static unsigned int blk_zone_wp_offset(struct blk_zone *zone)
struct blk_zone *zone)
int disk_report_zone(struct gendisk *disk, struct blk_zone *zone,
static int blkdev_report_zone_cb(struct blk_zone *zone, unsigned int idx,
memcpy(data, zone, sizeof(struct blk_zone));
sector_t sector, struct blk_zone *zone)
struct blk_zone *zone)
struct blk_zone blkz;
memset(&blkz, 0, sizeof(struct blk_zone));
bufsize = nr_zones * sizeof(struct blk_zone);
while (bufsize >= sizeof(struct blk_zone)) {
struct blk_zone *buffer;
max_zones_per_request = buffer_length / sizeof(struct blk_zone);
struct blk_zone *zone = buffer + i;
struct blk_zone zone = { };
struct blk_zone blkz = {};
static int dm_device_count_zones_cb(struct blk_zone *zone,
static int dm_zone_need_reset_cb(struct blk_zone *zone, unsigned int idx,
static int dm_report_zones_cb(struct blk_zone *zone, unsigned int idx,
static int dmz_init_zone(struct blk_zone *blkz, unsigned int num, void *data)
static int dmz_update_zone_cb(struct blk_zone *blkz, unsigned int idx,
struct blk_zone zone = { };
static int nvmet_bdev_report_zone_cb(struct blk_zone *z, unsigned i, void *d)
static int validate_conv_zones_cb(struct blk_zone *z,
static int zmgmt_send_scan_cb(struct blk_zone *z, unsigned i, void *d)
struct blk_zone zone = { 0 };
struct blk_zone zone;
struct blk_zone *zones, unsigned int nr_zones)
struct blk_zone *zones, unsigned int *nr_zones)
struct blk_zone *zone)
struct blk_zone zone;
struct blk_zone *zone_info;
struct blk_zone *zones = NULL;
zones = kvzalloc_objs(struct blk_zone, BTRFS_REPORT_NR_ZONES);
sizeof(struct blk_zone));
static int btrfs_get_dev_zone(struct btrfs_device *device, u64 pos, struct blk_zone *zone)
static inline bool sb_zone_is_full(const struct blk_zone *zone)
static int copy_zone_info_cb(struct blk_zone *zone, unsigned int idx, void *data)
struct blk_zone *zones = data;
static int sb_log_location(struct block_device *bdev, struct blk_zone *zones,
struct blk_zone *reset = NULL;
struct blk_zone zones[BTRFS_NR_SB_LOG_ZONES];
static int sb_write_pointer(struct block_device *bdev, struct blk_zone *zones,
struct blk_zone *zone;
struct blk_zone *zone_cache;
struct blk_zone sb_zones[2 * BTRFS_SUPER_MIRROR_MAX];
struct blk_zone *zone)
static int report_one_zone_cb(struct blk_zone *zone, unsigned int idx,
memcpy(data, zone, sizeof(struct blk_zone));
struct blk_zone zone;
static int check_zone_write_pointer_cb(struct blk_zone *zone, unsigned int idx,
static int f2fs_report_zone_cb(struct blk_zone *zone, unsigned int idx,
struct blk_zone *zone,
struct blk_zone *zone,
struct blk_zone *zone,
bool xfs_validate_blk_zone(struct xfs_mount *mp, struct blk_zone *zone,
struct blk_zone;
struct blk_zone zone = {};
struct blk_zone *zone)
static int zonefs_io_error_cb(struct blk_zone *zone, unsigned int idx,
struct blk_zone *z = data;
static void zonefs_handle_io_error(struct inode *inode, struct blk_zone *zone,
struct blk_zone zone;
struct blk_zone *zones;
static int zonefs_get_zone_info_cb(struct blk_zone *zone, unsigned int idx,
memcpy(&zd->zones[idx], zone, sizeof(struct blk_zone));
zd->zones = kvzalloc_objs(struct blk_zone, bdev_nr_zones(bdev));
struct blk_zone *zone, *next, *end;
static inline enum zonefs_ztype zonefs_zone_type(struct blk_zone *zone)
typedef int (*report_zones_cb)(struct blk_zone *zone, unsigned int idx,
int disk_report_zone(struct gendisk *disk, struct blk_zone *zone,
struct blk_zone *zone);
struct blk_zone zones[];