| /linux/Documentation/admin-guide/device-mapper/ |
| H A D | dm-zoned.rst | 25 host-managed disk with 256 MB zones, dm-zoned memory usage per disk 26 instance is at most 4.5 MB and as little as 5 zones will be used 38 write accesses to the sequential zones of a zoned block device. 39 Conventional zones are used for caching as well as for storing internal 42 in zones with the same size as the zoned block device. These zones will be 43 placed in front of the zones from the zoned block device and will be handled 44 just like conventional zones. 46 The zones of the device(s) are separated into 2 types: 48 1) Metadata zones: these are conventional zones used to store metadata. 49 Metadata zones are not reported as usable capacity to the user. [all …]
|
| /linux/drivers/md/dm-vdo/ |
| H A D | dedupe.h | 83 void vdo_free_hash_zones(struct hash_zones *zones); 85 void vdo_drain_hash_zones(struct hash_zones *zones, struct vdo_completion *parent); 87 void vdo_get_dedupe_statistics(struct hash_zones *zones, struct vdo_statistics *stats); 89 struct hash_zone * __must_check vdo_select_hash_zone(struct hash_zones *zones, 92 void vdo_dump_hash_zones(struct hash_zones *zones); 94 const char *vdo_get_dedupe_index_state_name(struct hash_zones *zones); 96 u64 vdo_get_dedupe_index_timeout_count(struct hash_zones *zones); 98 int vdo_message_dedupe_index(struct hash_zones *zones, const char *name); 100 void vdo_set_dedupe_state_normal(struct hash_zones *zones); 102 void vdo_start_dedupe_index(struct hash_zones *zones, bool create_flag); [all …]
|
| H A D | action-manager.h | 24 * an optional method to be run on the initiator thread before applying the action to all zones 26 * an optional method to be applied to each of the zones 29 * applied to all zones 37 * A function which is to be applied asynchronously to a set of zones. 79 int __must_check vdo_make_action_manager(zone_count_t zones,
|
| H A D | physical-zone.h | 72 /* The number of zones */ 74 /* The physical zones themselves */ 75 struct physical_zone zones[]; member 97 void vdo_free_physical_zones(struct physical_zones *zones);
|
| /linux/Documentation/filesystems/ |
| H A D | zonefs.rst | 14 write zones of the device must be written sequentially starting from the end 34 space that is divided into zones. A zone is a group of consecutive LBAs and all 35 zones are contiguous (there are no LBA gaps). Zones may have different types. 37 * Conventional zones: there are no access constraints to LBAs belonging to 38 conventional zones. Any read or write access can be executed, similarly to a 40 * Sequential zones: these zones accept random reads but must be written 44 cannot be overwritten. Sequential zones must first be erased using a special 60 Zonefs exposes the zones of a zoned block device as files. The files 61 representing zones are grouped by zone type, which are themselves represented 85 Files representing zones of the same type are grouped together under the same [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx4/ |
| H A D | alloc.c | 226 struct mlx4_zone_allocator *zones = kmalloc_obj(*zones); in mlx4_zone_allocator_create() local 228 if (NULL == zones) in mlx4_zone_allocator_create() 231 INIT_LIST_HEAD(&zones->entries); in mlx4_zone_allocator_create() 232 INIT_LIST_HEAD(&zones->prios); in mlx4_zone_allocator_create() 233 spin_lock_init(&zones->lock); in mlx4_zone_allocator_create() 234 zones->last_uid = 0; in mlx4_zone_allocator_create() 235 zones->mask = 0; in mlx4_zone_allocator_create() 236 zones->flags = flags; in mlx4_zone_allocator_create() 238 return zones; in mlx4_zone_allocator_create() 426 struct mlx4_zone_allocator *zones, u32 uid) in __mlx4_find_zone_by_uid() argument [all …]
|
| H A D | qp.c | 244 *base = mlx4_zone_alloc_entries(qp_table->zones, uid, cnt, align, in __mlx4_qp_reserve_range() 287 mlx4_zone_free_entries_unique(qp_table->zones, base_qpn, cnt); in __mlx4_qp_release_range() 562 qp_table->zones = mlx4_zone_allocator_create(MLX4_ZONE_ALLOC_FLAGS_NO_OVERLAP); in mlx4_create_zones() 564 if (NULL == qp_table->zones) in mlx4_create_zones() 583 err = mlx4_zone_add_one(qp_table->zones, *bitmap + MLX4_QP_TABLE_ZONE_GENERAL, in mlx4_create_zones() 602 err = mlx4_zone_add_one(qp_table->zones, *bitmap + MLX4_QP_TABLE_ZONE_RSS, in mlx4_create_zones() 698 /* Add an empty bitmap, we'll allocate from different zones (since in mlx4_create_zones() 713 err = mlx4_zone_add_one(qp_table->zones, *bitmap + k, in mlx4_create_zones() 735 mlx4_zone_allocator_destroy(qp_table->zones); in mlx4_create_zones() 743 if (qp_table->zones) { in mlx4_cleanup_qp_zones() [all …]
|
| /linux/drivers/block/null_blk/ |
| H A D | zoned.c | 94 dev->zones = kvmalloc_objs(struct nullb_zone, dev->nr_zones, in null_init_zoned_dev() 96 if (!dev->zones) in null_init_zoned_dev() 103 pr_info("changed the number of conventional zones to %u", in null_init_zoned_dev() 112 /* Max active zones has to be < nbr of seq zones in order to be enforceable */ in null_init_zoned_dev() 118 /* Max open zones has to be <= max active zones */ in null_init_zoned_dev() 121 pr_info("changed the maximum number of open zones to %u\n", in null_init_zoned_dev() 131 zone = &dev->zones[i]; in null_init_zoned_dev() 145 zone = &dev->zones[i]; in null_init_zoned_dev() 189 kvfree(dev->zones); in null_free_zoned_dev() 190 dev->zones = NULL; in null_free_zoned_dev() [all …]
|
| /linux/fs/btrfs/ |
| H A D | zoned.c | 22 /* Maximum number of zones to report per blkdev_report_zones() call */ 43 /* Number of superblock log zones */ 46 /* Default number of max active zones when the device has no limits. */ 50 * Minimum of active zones we need: 52 * - BTRFS_SUPER_MIRROR_MAX zones for superblock mirrors 53 * - 3 zones to ensure at least one zone per SYSTEM, META and DATA block group 81 struct blk_zone *zones = data; in copy_zone_info_cb() local 83 memcpy(&zones[idx], zone, sizeof(*zone)); in copy_zone_info_cb() 88 static int sb_write_pointer(struct block_device *bdev, struct blk_zone *zones, in sb_write_pointer() argument 96 ASSERT(zones[i].type != BLK_ZONE_TYPE_CONVENTIONAL, in sb_write_pointer() [all …]
|
| /linux/include/uapi/linux/ |
| H A D | blkzoned.h | 23 * enum blk_zone_type - Types of zones allowed in a zoned device. 44 * @BLK_ZONE_COND_EXP_OPEN: The zones was explicitly opened by an 152 * @zones: Space to hold @nr_zones @zones entries on reply. 160 struct blk_zone zones[]; member 168 * @nr_sectors: Total number of sectors of all zones to operate on. 188 * may include zones with the condition @BLK_ZONE_COND_ACTIVE 191 * @BLKRESETZONE: Reset the write pointer of the zones in the specified 194 * @BLKGETNRZONES: Get the total number of zones of the device. 195 * @BLKOPENZONE: Open the zones in the specified sector range. 197 * @BLKCLOSEZONE: Close the zones in the specified sector range. [all …]
|
| /linux/Documentation/power/powercap/ |
| H A D | powercap.rst | 19 Power zones represent different parts of the system, which can be controlled and 23 the system represented by different power zones are hierarchical (that is, one 25 controls), those power zones may also be organized in a hierarchy with one 150 control type called intel-rapl which contains two power zones, intel-rapl:0 and 151 intel-rapl:1, representing CPU packages. Each of these power zones contains 154 the zones and subzones contain energy monitoring attributes (energy_uj, 156 to be applied (the constraints in the 'package' power zones apply to the whole 170 Depending on different power zones, the Intel RAPL technology allows 173 All the zones contain attributes representing the constraint names, 245 enabled (rw): Enable/Disable controls at zone level or for all zones using
|
| /linux/drivers/powercap/ |
| H A D | arm_scmi_powercap.c | 266 /* Un-register children zones first starting from the leaves */ in scmi_powercap_unregister_all_zones() 332 * scmi_zones_register- Register SCMI powercap zones starting from parent zones 335 * @pr: A reference to the root powercap zones descriptors 337 * When registering SCMI powercap zones with the powercap framework we should 338 * take care to always register zones starting from the root ones and to 342 * zones provided by the SCMI platform firmware is built to comply with such 345 * This function, given the set of SCMI powercap zones to register, takes care 346 * to walk the SCMI powercap zones trees up to the root registering any 347 * unregistered parent zone before registering the child zones; at the same 351 * the @registered_zones array backward and unregister all the zones starting [all …]
|
| /linux/fs/zonefs/ |
| H A D | super.c | 3 * Simple file system for zoned block devices exposing zones as files. 59 * For zones that transitioned to the offline or readonly condition, in zonefs_account_active() 108 * open operation on other zones if the drive active zone resources in zonefs_zone_mgmt() 202 * The write pointer of read-only zones is invalid, so we cannot in zonefs_check_zone_condition() 216 /* The write pointer of full zones is invalid. */ in zonefs_check_zone_condition() 227 * offline and readonly zones. 234 /* Offline zones cannot be read nor written */ in zonefs_inode_update_mode() 238 /* Readonly zones cannot be written */ in zonefs_inode_update_mode() 304 * First handle bad zones signaled by hardware. The mount options in zonefs_handle_io_error() 396 * may prevent IO forward progress. Executing the report zones under in __zonefs_io_error() [all …]
|
| /linux/fs/xfs/ |
| H A D | xfs_zone_alloc.c | 93 * add the zones to the right buckets before the file systems becomes in xfs_zone_account_reclaimable() 121 * and wake up GC which might be waiting for zones to reclaim. in xfs_zone_account_reclaimable() 142 * Check if we have any zones that can be reclaimed by looking at the entry 399 * Don't add open zones to the reclaimable buckets. The I/O completion in xfs_zone_free_blocks() 453 * Pick the free zone with lowest index. Zones in the beginning of the in xfs_open_zone() 641 * instead of trying to open new zones for them or spread them to the least 676 * Try to fill up open zones with matching temperature if available. It in xfs_select_zone_nowait() 678 * activate empty zones when it is statistically better to separate in xfs_select_zone_nowait() 797 * GC only steals open zones at mount time, so no GC zones in xfs_get_cached_zone() 962 * Wait for all open zones to be freed so that they drop the group in xfs_free_open_zones() [all …]
|
| /linux/block/ |
| H A D | blk-zoned.c | 172 * The condition of a conventional, readonly and offline zones in disk_zone_set_cond() 243 * blkdev_report_zones - Get zones information 245 * @sector: Sector from which to report zones 246 * @nr_zones: Maximum number of zones to report 253 * To report all zones in a device starting from @sector, the BLK_ALL_ZONES 255 * Returns the number of zones reported by the device, or a negative errno 283 * blkdev_zone_mgmt - Execute a zone management operation on a range of zones 285 * @op: Operation to be performed on the zones 291 * Perform the specified operation on the range of zones specified by 293 * is valid, but the specified range should not contain conventional zones. [all …]
|
| /linux/drivers/md/ |
| H A D | dm-zoned-metadata.c | 32 * followed on disk by the mapping table of chunks to zones and the bitmap 38 * All metadata blocks are stored in conventional zones, starting from 57 /* The number of sequential zones reserved for reclaim */ 175 struct xarray zones; member 300 return xa_load(&zmd->zones, zone_id); in dmz_get() 311 if (xa_insert(&zmd->zones, zone_id, zone, GFP_KERNEL)) { in dmz_insert() 1066 dmz_dev_err(dev, "Invalid number of reserved sequential zones"); in dmz_check_sb() 1371 * Devices that have zones with a capacity smaller than the zone size in dmz_init_zone() 1409 * Tertiary superblock zones are always at the in dmz_init_zone() 1445 * Free zones descriptors. [all …]
|
| H A D | dm-zoned-reclaim.c | 45 * Percentage of unmapped (free) random zones below which reclaim starts 51 * Percentage of unmapped (free) random zones above which reclaim will 476 * setup only contains cache zones, so in dmz_should_reclaim() 488 /* If there are still plenty of cache zones, do not reclaim */ in dmz_should_reclaim() 493 * If the percentage of unmapped cache zones is low, in dmz_should_reclaim() 519 * We need to start reclaiming random zones: set up zone copy in dmz_reclaim_work() 520 * throttling to either go fast if we are very low on random zones in dmz_reclaim_work() 521 * and slower if there are still some free random zones to avoid in dmz_reclaim_work() 532 DMDEBUG("(%s/%u): Reclaim (%u): %s, %u%% free zones (%u/%u cache %u/%u random)", in dmz_reclaim_work()
|
| /linux/fs/pstore/ |
| H A D | zone.c | 4 * allocated zones that are then mapped and flushed into a single 92 * @kpszs: kmsg dump storage zones 95 * @fpszs: ftrace storage zones 256 /* flush dirty zones nicely */ in psz_zone_write() 281 static int psz_flush_dirty_zones(struct pstore_zone **zones, unsigned int cnt) in psz_flush_dirty_zones() argument 286 if (!zones) in psz_flush_dirty_zones() 290 zone = zones[i]; in psz_flush_dirty_zones() 569 struct pstore_zone **zones, unsigned int cnt) in psz_recover_zones() argument 575 if (!zones) in psz_recover_zones() 579 zone = zones[i]; in psz_recover_zones() [all …]
|
| /linux/sound/soc/ |
| H A D | soc-jack.c | 80 * snd_soc_jack_add_zones - Associate voltage zones with jack 83 * @count: Number of zones 84 * @zones: Array of zones 86 * After this function has been called the zones specified in the 90 struct snd_soc_jack_zone *zones) in snd_soc_jack_add_zones() argument 95 INIT_LIST_HEAD(&zones[i].list); in snd_soc_jack_add_zones() 96 list_add(&(zones[i].list), &jack->jack_zones); in snd_soc_jack_add_zones() 104 * the type of jack from the zones declared in the jack type 110 * the type of jack from the already declared jack zones [all...] |
| /linux/tools/testing/selftests/net/netfilter/ |
| H A D | nft_zones_many.sh | 4 # that are all placed in distinct conntrack zones. 8 zones=2000 9 [ "$KSFT_MACHINE_SLOW" = yes ] && zones=500 153 test_zones $zones 156 test_conntrack_tool $zones
|
| /linux/drivers/block/ |
| H A D | zloop.c | 152 struct zloop_zone zones[] __counted_by(nr_zones); 178 * the list of open zones so that if we need to 210 * If we have reached the maximum open zones limit, attempt to close an 212 * zone without exceeding the maximum number of open zones. 244 * maximum open zones limit. in zloop_open_closed_or_empty_zone() 251 * Implicit open case: if we have reached the maximum open zones in zloop_open_closed_or_empty_zone() 311 struct zloop_zone *zone = &zlo->zones[zone_no]; in zloop_update_seq_zone() 357 struct zloop_zone *zone = &zlo->zones[zone_no]; in zloop_open_zone() 382 struct zloop_zone *zone = &zlo->zones[zone_no]; in zloop_close_zone() 424 struct zloop_zone *zone = &zlo->zones[zone_no]; in zloop_reset_zone() [all …]
|
| /linux/drivers/thermal/intel/ |
| H A D | x86_pkg_temp_thermal.c | 67 static struct zone_device **zones; variable 104 return zones[id]; in pkg_temp_thermal_get_dev() 365 zones[id] = zonedev; in pkg_temp_thermal_device_add() 427 zones[topology_logical_die_id(cpu)] = NULL; in pkg_thermal_cpu_offline() 495 zones = kzalloc_objs(struct zone_device *, max_id); in pkg_temp_thermal_init() 496 if (!zones) in pkg_temp_thermal_init() 515 kfree(zones); in pkg_temp_thermal_init() 527 kfree(zones); in module_init()
|
| /linux/include/uapi/linux/media/amlogic/ |
| H A D | c3-isp-config.h | 17 * Frames are split into zones of almost equal width and height - a zone is a 48 * AWB statistical information of all zones. 253 * @horiz_zones_num: active number of hotizontal zones [0..32] 254 * @vert_zones_num: active number of vertical zones [0..24] 263 * @zone_weight: array of weights for AWB statistics zones [0..15] 306 * @horiz_zones_num: active number of horizontal zones [0..17] 307 * @vert_zones_num: active number of vertical zones [0..15] 309 * @zone_weight: array of weights for AE statistics zones [0..15] 346 * @horiz_zones_num: active number of hotizontal zones [0..17] 347 * @vert_zones_num: active number of vertical zones [0..15]
|
| /linux/tools/thermal/thermometer/ |
| H A D | thermometer.8 | 13 \fBthermometer \fP captures the thermal zones temperature at a 21 If no configuration file is specified, then all the thermal zones will 26 The sampling of the different thermal zones will be written into
|
| /linux/Documentation/devicetree/bindings/thermal/ |
| H A D | thermal-sensor.yaml | 15 and the software abstraction of thermal zones required to take appropriate 22 - thermal-zones: a container of the following node types used to describe all 28 zones. Typical devices are I2C ADC converters and bandgaps. Thermal sensor
|