Lines Matching full:limits
336 * Flags automatically inherited when stacking limits.
379 /* atomic write limits */
488 struct queue_limits limits; member
618 #define blk_queue_nonrot(q) (!((q)->limits.features & BLK_FEAT_ROTATIONAL))
619 #define blk_queue_io_stat(q) ((q)->limits.features & BLK_FEAT_IO_STAT)
620 #define blk_queue_dax(q) ((q)->limits.features & BLK_FEAT_DAX)
621 #define blk_queue_pci_p2pdma(q) ((q)->limits.features & BLK_FEAT_PCI_P2PDMA)
637 ((q)->limits.features & BLK_FEAT_SKIP_TAGSET_QUIESCE)
668 (q->limits.features & BLK_FEAT_ZONED); in blk_queue_is_zoned()
692 return sector >> ilog2(disk->queue->limits.chunk_sectors); in disk_zone_no()
702 return bdev->bd_disk->queue->limits.max_open_zones; in bdev_max_open_zones()
707 return bdev->bd_disk->queue->limits.max_active_zones; in bdev_max_active_zones()
811 * @lim: queue limits to be used for this disk.
912 * queue_limits_start_update - start an atomic update of queue limits
915 * This functions starts an atomic update of the queue limits. It takes a lock
916 * to prevent other updates and returns a snapshot of the current limits that
927 return q->limits; in queue_limits_start_update()
934 * queue_limits_cancel_update - cancel an atomic update of queue limits
937 * This functions cancels an atomic update of the queue limits started by
955 q->limits.max_discard_sectors = 0; in blk_queue_disable_discard()
960 q->limits.max_secure_erase_sectors = 0; in blk_queue_disable_secure_erase()
965 q->limits.max_write_zeroes_sectors = 0; in blk_queue_disable_write_zeroes()
1144 * controlled by the driver, usually based on hardware limits.
1150 return q->limits.seg_boundary_mask; in queue_segment_boundary()
1155 return q->limits.virt_boundary_mask; in queue_virt_boundary()
1160 return q->limits.max_sectors; in queue_max_sectors()
1170 return q->limits.max_hw_sectors; in queue_max_hw_sectors()
1175 return q->limits.max_segments; in queue_max_segments()
1180 return q->limits.max_discard_segments; in queue_max_discard_segments()
1185 return q->limits.max_segment_size; in queue_max_segment_size()
1201 return queue_limits_max_zone_append_sectors(&q->limits); in queue_max_zone_append_sectors()
1206 return blk_queue_is_zoned(q) && !q->limits.max_zone_append_sectors; in queue_emulates_zone_append()
1227 return q->limits.logical_block_size; in queue_logical_block_size()
1237 return q->limits.physical_block_size; in queue_physical_block_size()
1247 return q->limits.io_min; in queue_io_min()
1257 return q->limits.io_opt; in queue_io_opt()
1268 return q->limits.zone_write_granularity; in queue_zone_write_granularity()
1282 return bdev_get_queue(bdev)->limits.max_discard_sectors; in bdev_max_discard_sectors()
1287 return bdev_get_queue(bdev)->limits.discard_granularity; in bdev_discard_granularity()
1293 return bdev_get_queue(bdev)->limits.max_secure_erase_sectors; in bdev_max_secure_erase_sectors()
1298 return bdev_get_queue(bdev)->limits.max_write_zeroes_sectors; in bdev_write_zeroes_sectors()
1308 return bdev->bd_disk->queue->limits.features & BLK_FEAT_SYNCHRONOUS; in bdev_synchronous()
1316 q->limits.integrity.csum_type != BLK_INTEGRITY_CSUM_NONE) in bdev_stable_writes()
1318 return q->limits.features & BLK_FEAT_STABLE_WRITES; in bdev_stable_writes()
1323 return (q->limits.features & BLK_FEAT_WRITE_CACHE) && in blk_queue_write_cache()
1324 !(q->limits.flags & BLK_FLAG_WRITE_CACHE_DISABLED); in blk_queue_write_cache()
1334 return bdev_get_queue(bdev)->limits.features & BLK_FEAT_FUA; in bdev_fua()
1339 return bdev->bd_disk->queue->limits.features & BLK_FEAT_NOWAIT; in bdev_nowait()
1358 return q->limits.chunk_sectors; in bdev_zone_sectors()
1381 return q->limits.dma_alignment; in queue_dma_alignment()
1387 return q->limits.atomic_write_unit_max; in queue_atomic_write_unit_max_bytes()
1393 return q->limits.atomic_write_unit_min; in queue_atomic_write_unit_min_bytes()
1399 return q->limits.atomic_write_boundary_sectors << SECTOR_SHIFT; in queue_atomic_write_boundary_bytes()
1405 return q->limits.atomic_write_max_sectors << SECTOR_SHIFT; in queue_atomic_write_max_bytes()
1428 unsigned int alignment = blk_lim_dma_alignment_and_pad(&q->limits); in blk_rq_aligned()
1659 struct queue_limits *limits = &bd_queue->limits; in bdev_can_atomic_write() local
1661 if (!limits->atomic_write_unit_min) in bdev_can_atomic_write()
1667 max(limits->atomic_write_unit_min, in bdev_can_atomic_write()
1668 limits->atomic_write_hw_boundary); in bdev_can_atomic_write()