Lines Matching refs:lim

105 static void sd_config_discard(struct scsi_disk *sdkp, struct queue_limits *lim,
108 struct queue_limits *lim);
125 struct queue_limits *lim) in sd_set_flush_flag() argument
128 lim->features |= BLK_FEAT_WRITE_CACHE; in sd_set_flush_flag()
130 lim->features |= BLK_FEAT_FUA; in sd_set_flush_flag()
132 lim->features &= ~BLK_FEAT_FUA; in sd_set_flush_flag()
134 lim->features &= ~(BLK_FEAT_WRITE_CACHE | BLK_FEAT_FUA); in sd_set_flush_flag()
173 struct queue_limits lim; in cache_type_store() local
178 lim = queue_limits_start_update(sdkp->disk->queue); in cache_type_store()
179 sd_set_flush_flag(sdkp, &lim); in cache_type_store()
181 &lim); in cache_type_store()
499 struct queue_limits lim; in provisioning_mode_store() local
512 lim = queue_limits_start_update(sdkp->disk->queue); in provisioning_mode_store()
513 sd_config_discard(sdkp, &lim, mode); in provisioning_mode_store()
514 err = queue_limits_commit_update_frozen(sdkp->disk->queue, &lim); in provisioning_mode_store()
599 struct queue_limits lim; in max_write_same_blocks_store() local
621 lim = queue_limits_start_update(sdkp->disk->queue); in max_write_same_blocks_store()
622 sd_config_write_same(sdkp, &lim); in max_write_same_blocks_store()
623 err = queue_limits_commit_update_frozen(sdkp->disk->queue, &lim); in max_write_same_blocks_store()
875 static void sd_config_discard(struct scsi_disk *sdkp, struct queue_limits *lim, in sd_config_discard() argument
881 lim->discard_alignment = sdkp->unmap_alignment * logical_block_size; in sd_config_discard()
882 lim->discard_granularity = max(sdkp->physical_block_size, in sd_config_discard()
921 lim->max_hw_discard_sectors = max_blocks * in sd_config_discard()
968 static void sd_config_atomic(struct scsi_disk *sdkp, struct queue_limits *lim) in sd_config_atomic() argument
1020 lim->atomic_write_hw_max = max_atomic * logical_block_size; in sd_config_atomic()
1021 lim->atomic_write_hw_boundary = 0; in sd_config_atomic()
1022 lim->atomic_write_hw_unit_min = unit_min * logical_block_size; in sd_config_atomic()
1023 lim->atomic_write_hw_unit_max = unit_max * logical_block_size; in sd_config_atomic()
1024 lim->features |= BLK_FEAT_ATOMIC_WRITES; in sd_config_atomic()
1117 struct queue_limits *lim) in sd_config_write_same() argument
1172 lim->max_write_zeroes_sectors = in sd_config_write_same()
1177 lim->max_hw_wzeroes_unmap_sectors = in sd_config_write_same()
1178 lim->max_write_zeroes_sectors; in sd_config_write_same()
2618 struct queue_limits *lim) in sd_config_protection() argument
2623 sd_dif_config_host(sdkp, lim); in sd_config_protection()
2672 struct queue_limits *lim, unsigned char *buffer) in read_capacity_16() argument
2746 lim->alignment_offset = alignment; in read_capacity_16()
2858 sd_read_capacity(struct scsi_disk *sdkp, struct queue_limits *lim, in sd_read_capacity() argument
2865 sector_size = read_capacity_16(sdkp, sdp, lim, buffer); in sd_read_capacity()
2885 sector_size = read_capacity_16(sdkp, sdp, lim, buffer); in sd_read_capacity()
2944 lim->logical_block_size = sector_size; in sd_read_capacity()
2945 lim->physical_block_size = sdkp->physical_block_size; in sd_read_capacity()
3377 struct queue_limits *lim) in sd_read_block_limits() argument
3418 sd_config_atomic(sdkp, lim); in sd_read_block_limits()
3439 struct queue_limits *lim) in sd_read_block_characteristics() argument
3457 lim->features &= ~(BLK_FEAT_ROTATIONAL | BLK_FEAT_ADD_RANDOM); in sd_read_block_characteristics()
3739 struct queue_limits *lim = NULL; in sd_revalidate_disk() local
3754 lim = kmalloc(sizeof(*lim), GFP_KERNEL); in sd_revalidate_disk()
3755 if (!lim) in sd_revalidate_disk()
3764 *lim = queue_limits_start_update(sdkp->disk->queue); in sd_revalidate_disk()
3771 sd_read_capacity(sdkp, lim, buffer); in sd_revalidate_disk()
3785 lim->features |= (BLK_FEAT_ROTATIONAL | BLK_FEAT_ADD_RANDOM); in sd_revalidate_disk()
3789 sd_read_block_limits(sdkp, lim); in sd_revalidate_disk()
3791 sd_read_block_characteristics(sdkp, lim); in sd_revalidate_disk()
3792 sd_zbc_read_zones(sdkp, lim, buffer); in sd_revalidate_disk()
3795 sd_config_discard(sdkp, lim, sd_discard_mode(sdkp)); in sd_revalidate_disk()
3805 sd_config_protection(sdkp, lim); in sd_revalidate_disk()
3812 sd_set_flush_flag(sdkp, lim); in sd_revalidate_disk()
3819 lim->max_dev_sectors = logical_to_sectors(sdp, dev_max); in sd_revalidate_disk()
3822 lim->io_min = logical_to_bytes(sdp, sdkp->min_xfer_blocks); in sd_revalidate_disk()
3824 lim->io_min = 0; in sd_revalidate_disk()
3831 lim->io_opt = sdp->host->opt_sectors << SECTOR_SHIFT; in sd_revalidate_disk()
3833 lim->io_opt = min_not_zero(lim->io_opt, in sd_revalidate_disk()
3840 sd_config_write_same(sdkp, lim); in sd_revalidate_disk()
3842 err = queue_limits_commit_update_frozen(sdkp->disk->queue, lim); in sd_revalidate_disk()
3864 kfree(lim); in sd_revalidate_disk()