dcssblk: pass queue_limits to blk_mq_alloc_disk
Pass the queue limits directly to blk_alloc_disk instead of setting them one at a time. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Dan Williams <dan.j.williams@intel.com> Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com> Link: https://lore.kernel.org/r/20240215071055.2201424-10-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
c3d9c3031e
commit
af190c53c9
@ -546,6 +546,9 @@ static const struct attribute_group *dcssblk_dev_attr_groups[] = {
|
||||
static ssize_t
|
||||
dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
|
||||
{
|
||||
struct queue_limits lim = {
|
||||
.logical_block_size = 4096,
|
||||
};
|
||||
int rc, i, j, num_of_segments;
|
||||
struct dcssblk_dev_info *dev_info;
|
||||
struct segment_info *seg_info, *temp;
|
||||
@ -629,7 +632,7 @@ dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char
|
||||
dev_info->dev.release = dcssblk_release_segment;
|
||||
dev_info->dev.groups = dcssblk_dev_attr_groups;
|
||||
INIT_LIST_HEAD(&dev_info->lh);
|
||||
dev_info->gd = blk_alloc_disk(NULL, NUMA_NO_NODE);
|
||||
dev_info->gd = blk_alloc_disk(&lim, NUMA_NO_NODE);
|
||||
if (IS_ERR(dev_info->gd)) {
|
||||
rc = PTR_ERR(dev_info->gd);
|
||||
goto seg_list_del;
|
||||
@ -639,7 +642,6 @@ dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char
|
||||
dev_info->gd->fops = &dcssblk_devops;
|
||||
dev_info->gd->private_data = dev_info;
|
||||
dev_info->gd->flags |= GENHD_FL_NO_PART;
|
||||
blk_queue_logical_block_size(dev_info->gd->queue, 4096);
|
||||
blk_queue_flag_set(QUEUE_FLAG_DAX, dev_info->gd->queue);
|
||||
|
||||
seg_byte_size = (dev_info->end - dev_info->start + 1);
|
||||
|
Loading…
Reference in New Issue
Block a user