Lines Matching full:zones
3 * Simple file system for zoned block devices exposing zones as files.
44 * For zones that transitioned to the offline or readonly condition, in zonefs_account_active()
82 * open operation on other zones if the drive active zone resources in zonefs_zone_mgmt()
169 * Sequential zones can only accept direct writes. This is already in zonefs_write_iomap_begin()
178 * For conventional zones, all blocks are always mapped. For sequential in zonefs_write_iomap_begin()
179 * zones, all blocks after always mapped below the inode size (zone in zonefs_write_iomap_begin()
314 * offline and readonly zones. Return the inode size corresponding to the
339 * The write pointer of read-only zones is invalid. If such a in zonefs_check_zone_condition()
361 /* The write pointer of full zones is invalid. */ in zonefs_check_zone_condition()
422 * First handle bad zones signaled by hardware. The mount options in zonefs_io_error_cb()
501 * files with aggregated conventional zones, for which the inode zone in __zonefs_io_error()
513 * may prevent IO forward progress. Executing the report zones under in __zonefs_io_error()
574 * take care of open zones. in zonefs_file_truncate()
710 * Conventional zones accept random writes, so their files can support in zonefs_file_mmap()
730 * Seeks are limited to below the zone size for conventional zones in zonefs_file_llseek()
731 * and below the zone write pointer for sequential zones. In both in zonefs_file_llseek()
931 /* Enforce sequential writes (append only) in sequential zones */ in zonefs_file_dio_write()
1055 /* Offline zones cannot be read */ in zonefs_file_read_iter()
1196 * Leaving zones explicitly open may lead to a state in zonefs_seq_file_write_close()
1197 * where most zones cannot be written (zone resources in zonefs_seq_file_write_close()
1458 * For sequential zones, make sure that any open zone is closed first in zonefs_init_file_inode()
1459 * to ensure that the initial number of open zones is 0, in sync with in zonefs_init_file_inode()
1521 struct blk_zone *zones; member
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()
1569 * For conventional zones, contiguous zones can be aggregated in zonefs_create_zgroup()
1571 * length of the first zone of the set of contiguous zones in zonefs_create_zgroup()
1573 * found, assume that all zones aggregated have the same in zonefs_create_zgroup()
1627 * Count the number of usable zones: the first zone at index 0 contains in zonefs_get_zone_info_cb()
1647 memcpy(&zd->zones[idx], zone, sizeof(struct blk_zone)); in zonefs_get_zone_info_cb()
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()
1662 /* Get zones information from the device */ in zonefs_get_zone_info()
1671 zonefs_err(zd->sb, "Invalid zone report (%d/%u zones)\n", in zonefs_get_zone_info()
1681 kvfree(zd->zones); in zonefs_cleanup_zone_info()
1767 * Check that the device is zoned. If it is, get the list of zones and create
1836 zonefs_info(sb, "Mounting %u zones", bdev_nr_zones(sb->s_bdev)); in zonefs_fill_super()