| /linux/rust/kernel/block/mq/ |
| H A D | tag_set.rs | 41 let tag_set: bindings::blk_mq_tag_set = pin_init::zeroed(); in new() 42 let tag_set: Result<_> = core::mem::size_of::<RequestDataWrapper>() in new() 55 ..tag_set in new() 62 inner <- tag_set.pin_chain(|tag_set| { in new() 63 // SAFETY: we do not move out of `tag_set`. in new() 64 let tag_set: &mut Opaque<_> = unsafe { Pin::get_unchecked_mut(tag_set) }; in new() 65 // SAFETY: `tag_set` is a reference to an initialized `blk_mq_tag_set`. in new() 66 error::to_result( unsafe { bindings::blk_mq_alloc_tag_set(tag_set in new() localVariable 43 let tag_set: bindings::blk_mq_tag_set = unsafe { core::mem::zeroed() }; new() localVariable 44 let tag_set: Result<_> = core::mem::size_of::<RequestDataWrapper>() new() localVariable [all...] |
| /linux/drivers/block/ |
| H A D | z2ram.c | 309 static struct blk_mq_tag_set tag_set; variable 320 disk = blk_mq_alloc_disk(&tag_set, NULL, NULL); in z2ram_register_disk() 351 tag_set.ops = &z2_mq_ops; in z2_init() 352 tag_set.nr_hw_queues = 1; in z2_init() 353 tag_set.nr_maps = 1; in z2_init() 354 tag_set.queue_depth = 16; in z2_init() 355 tag_set.numa_node = NUMA_NO_NODE; in z2_init() 356 ret = blk_mq_alloc_tag_set(&tag_set); in z2_init() 369 blk_mq_free_tag_set(&tag_set); in z2_init() 385 blk_mq_free_tag_set(&tag_set); in z2_exit()
|
| H A D | nbd.c | 117 struct blk_mq_tag_set tag_set; member 269 blk_mq_free_tag_set(&nbd->tag_set); in nbd_dev_remove() 480 (config->num_connections == 1 && nbd->tag_set.timeout)) { in nbd_xmit_timeout() 513 if (!nbd->tag_set.timeout) { in nbd_xmit_timeout() 886 if (hwq < nbd->tag_set.nr_hw_queues) in nbd_handle_reply() 887 req = blk_mq_tag_to_rq(nbd->tag_set.tags[hwq], in nbd_handle_reply() 1053 blk_mq_tagset_busy_iter(&nbd->tag_set, nbd_clear_req, NULL); in nbd_clear_que() 1343 if (nbd->tag_set.timeout) in nbd_reconnect_socket() 1344 sock->sk->sk_sndtimeo = nbd->tag_set.timeout; in nbd_reconnect_socket() 1463 nbd->tag_set.timeout = 0; in nbd_config_put() [all …]
|
| H A D | virtio_blk.c | 71 struct blk_mq_tag_set tag_set; member 1484 memset(&vblk->tag_set, 0, sizeof(vblk->tag_set)); in virtblk_probe() 1485 vblk->tag_set.ops = &virtio_mq_ops; in virtblk_probe() 1486 vblk->tag_set.queue_depth = queue_depth; in virtblk_probe() 1487 vblk->tag_set.numa_node = NUMA_NO_NODE; in virtblk_probe() 1488 vblk->tag_set.cmd_size = in virtblk_probe() 1491 vblk->tag_set.driver_data = vblk; in virtblk_probe() 1492 vblk->tag_set.nr_hw_queues = vblk->num_vqs; in virtblk_probe() 1493 vblk->tag_set.nr_maps = 1; in virtblk_probe() 1495 vblk->tag_set.nr_maps = 3; in virtblk_probe() [all …]
|
| H A D | ataflop.c | 305 struct blk_mq_tag_set tag_set; member 2001 disk = blk_mq_alloc_disk(&unit[drive].tag_set, &lim, NULL); in ataflop_alloc_disk() 2055 blk_mq_free_tag_set(&unit[i].tag_set); in atari_floppy_cleanup() 2073 blk_mq_free_tag_set(&fs->tag_set); in atari_cleanup_floppy_disk() 2086 memset(&unit[i].tag_set, 0, sizeof(unit[i].tag_set)); in atari_floppy_init() 2087 unit[i].tag_set.ops = &ataflop_mq_ops; in atari_floppy_init() 2088 unit[i].tag_set.nr_hw_queues = 1; in atari_floppy_init() 2089 unit[i].tag_set.nr_maps = 1; in atari_floppy_init() 2090 unit[i].tag_set.queue_depth = 2; in atari_floppy_init() 2091 unit[i].tag_set.numa_node = NUMA_NO_NODE; in atari_floppy_init() [all …]
|
| H A D | zloop.c | 115 struct blk_mq_tag_set tag_set; member 798 blk_mq_free_tag_set(&zlo->tag_set); in zloop_free_disk() 1080 zlo->tag_set.ops = &zloop_mq_ops; in zloop_ctl_add() 1081 zlo->tag_set.nr_hw_queues = opts->nr_queues; in zloop_ctl_add() 1082 zlo->tag_set.queue_depth = opts->queue_depth; in zloop_ctl_add() 1083 zlo->tag_set.numa_node = NUMA_NO_NODE; in zloop_ctl_add() 1084 zlo->tag_set.cmd_size = sizeof(struct zloop_cmd); in zloop_ctl_add() 1085 zlo->tag_set.driver_data = zlo; in zloop_ctl_add() 1087 ret = blk_mq_alloc_tag_set(&zlo->tag_set); in zloop_ctl_add() 1093 zlo->disk = blk_mq_alloc_disk(&zlo->tag_set, &lim, zlo); in zloop_ctl_add() [all …]
|
| H A D | ps3disk.c | 32 struct blk_mq_tag_set tag_set; member 441 error = blk_mq_alloc_sq_tag_set(&priv->tag_set, &ps3disk_mq_ops, 1, 0); in ps3disk_probe() 445 gendisk = blk_mq_alloc_disk(&priv->tag_set, &lim, dev); in ps3disk_probe() 478 blk_mq_free_tag_set(&priv->tag_set); in ps3disk_probe() 504 blk_mq_free_tag_set(&priv->tag_set); in ps3disk_remove()
|
| H A D | xen-blkfront.c | 226 struct blk_mq_tag_set tag_set; member 1120 memset(&info->tag_set, 0, sizeof(info->tag_set)); in xlvbd_alloc_gendisk() 1121 info->tag_set.ops = &blkfront_mq_ops; in xlvbd_alloc_gendisk() 1122 info->tag_set.nr_hw_queues = info->nr_rings; in xlvbd_alloc_gendisk() 1130 info->tag_set.queue_depth = BLK_RING_SIZE(info) / 2; in xlvbd_alloc_gendisk() 1132 info->tag_set.queue_depth = BLK_RING_SIZE(info); in xlvbd_alloc_gendisk() 1133 info->tag_set.numa_node = NUMA_NO_NODE; in xlvbd_alloc_gendisk() 1134 info->tag_set.cmd_size = sizeof(struct blkif_req); in xlvbd_alloc_gendisk() 1135 info->tag_set.driver_data = info; in xlvbd_alloc_gendisk() 1137 err = blk_mq_alloc_tag_set(&info->tag_set); in xlvbd_alloc_gendisk() [all …]
|
| /linux/drivers/mmc/core/ |
| H A D | queue.c | 384 disk = blk_mq_alloc_disk(&mq->tag_set, &lim, mq); in mmc_alloc_disk() 432 memset(&mq->tag_set, 0, sizeof(mq->tag_set)); in mmc_init_queue() 433 mq->tag_set.ops = &mmc_mq_ops; in mmc_init_queue() 439 mq->tag_set.queue_depth = in mmc_init_queue() 442 mq->tag_set.queue_depth = MMC_QUEUE_DEPTH; in mmc_init_queue() 443 mq->tag_set.numa_node = NUMA_NO_NODE; in mmc_init_queue() 444 mq->tag_set.flags = BLK_MQ_F_BLOCKING; in mmc_init_queue() 445 mq->tag_set.nr_hw_queues = 1; in mmc_init_queue() 446 mq->tag_set.cmd_size = sizeof(struct mmc_queue_req); in mmc_init_queue() 447 mq->tag_set.driver_data = mq; in mmc_init_queue() [all …]
|
| /linux/drivers/mtd/ubi/ |
| H A D | block.c | 85 struct blk_mq_tag_set tag_set; member 383 dev->tag_set.ops = &ubiblock_mq_ops; in ubiblock_create() 384 dev->tag_set.queue_depth = 64; in ubiblock_create() 385 dev->tag_set.numa_node = NUMA_NO_NODE; in ubiblock_create() 386 dev->tag_set.flags = BLK_MQ_F_BLOCKING; in ubiblock_create() 387 dev->tag_set.cmd_size = sizeof(struct ubiblock_pdu); in ubiblock_create() 388 dev->tag_set.driver_data = dev; in ubiblock_create() 389 dev->tag_set.nr_hw_queues = 1; in ubiblock_create() 391 ret = blk_mq_alloc_tag_set(&dev->tag_set); in ubiblock_create() 400 gd = blk_mq_alloc_disk(&dev->tag_set, &lim, dev); in ubiblock_create() [all …]
|
| /linux/block/ |
| H A D | bsg-lib.c | 22 struct blk_mq_tag_set tag_set; member 279 container_of(q->tag_set, struct bsg_set, tag_set); in bsg_queue_rq() 324 container_of(q->tag_set, struct bsg_set, tag_set); in bsg_remove_queue() 329 blk_mq_free_tag_set(&bset->tag_set); in bsg_remove_queue() 338 container_of(rq->q->tag_set, struct bsg_set, tag_set); in bsg_timeout() 378 set = &bset->tag_set; in bsg_setup_queue()
|
| H A D | elevator.c | 591 q->nr_requests = q->tag_set->queue_depth; in elevator_switch() 592 q->async_depth = q->tag_set->queue_depth; in elevator_switch() 622 blk_mq_free_sched_res(&ctx->res, ctx->type, q->tag_set); in elv_exit_and_release() 639 blk_mq_free_sched_res(&res, ctx->old->type, q->tag_set); in elevator_change_done() 656 struct blk_mq_tag_set *set = q->tag_set; in elevator_change() 703 struct blk_mq_tag_set *set = q->tag_set; in elv_update_nr_hw_queues() 740 if (q->tag_set->flags & BLK_MQ_F_NO_SCHED_BY_DEFAULT) in elevator_set_default() 753 blk_mq_is_shared_tags(q->tag_set->flags))) { in elevator_set_default() 793 struct blk_mq_tag_set *set = q->tag_set; in elv_iosched_store()
|
| H A D | blk-mq-tag.c | 271 struct blk_mq_tag_set *set = q->tag_set; in bt_iter() 509 srcu_idx = srcu_read_lock(&q->tag_set->tags_srcu); in blk_mq_queue_tag_busy_iter() 510 if (blk_mq_is_shared_tags(q->tag_set->flags)) { in blk_mq_queue_tag_busy_iter() 511 struct blk_mq_tags *tags = q->tag_set->shared_tags; in blk_mq_queue_tag_busy_iter() 539 srcu_read_unlock(&q->tag_set->tags_srcu, srcu_idx); in blk_mq_queue_tag_busy_iter() 629 nr - q->tag_set->reserved_tags); in blk_mq_tag_update_sched_shared_tags()
|
| H A D | blk-mq.h | 87 return queue_hctx((q), (q->tag_set->map[type].mq_map[cpu])); in blk_mq_map_queue_type() 441 if ((q)->tag_set->flags & BLK_MQ_F_BLOCKING) { \ 442 struct blk_mq_tag_set *__tag_set = (q)->tag_set; \ 462 q->tag_set->map[HCTX_TYPE_POLL].nr_queues; in blk_mq_can_poll()
|
| H A D | blk-mq-sched.c | 553 struct blk_mq_tag_set *set = q->tag_set; in blk_mq_alloc_sched_res() 617 unsigned int flags = q->tag_set->flags; in blk_mq_init_sched() 675 if (blk_mq_is_shared_tags(q->tag_set->flags)) { in blk_mq_sched_free_rqs() 676 blk_mq_free_rqs(q->tag_set, q->sched_shared_tags, in blk_mq_sched_free_rqs() 681 blk_mq_free_rqs(q->tag_set, in blk_mq_sched_free_rqs()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | definer.c | 133 (fc)->tag_set = &hws_definer_generic_set; \ 557 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 562 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 567 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 572 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 577 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 582 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 587 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 592 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_steering_ok_bits_handler() 612 fc->tag_set = &hws_definer_generic_set; in hws_definer_flex_parser_handler() [all …]
|
| /linux/drivers/mtd/ |
| H A D | mtd_blkdevs.c | 33 blk_mq_free_tag_set(dev->tag_set); in blktrans_dev_release() 34 kfree(dev->tag_set); in blktrans_dev_release() 327 new->tag_set = kzalloc_obj(*new->tag_set); in add_mtd_blktrans_dev() 328 if (!new->tag_set) in add_mtd_blktrans_dev() 331 ret = blk_mq_alloc_sq_tag_set(new->tag_set, &mtd_mq_ops, 2, in add_mtd_blktrans_dev() 343 gd = blk_mq_alloc_disk(new->tag_set, &lim, new); in add_mtd_blktrans_dev() 396 blk_mq_free_tag_set(new->tag_set); in add_mtd_blktrans_dev() 398 kfree(new->tag_set); in add_mtd_blktrans_dev()
|
| /linux/drivers/s390/block/ |
| H A D | scm_blk.c | 458 bdev->tag_set.ops = &scm_mq_ops; in scm_blk_dev_setup() 459 bdev->tag_set.cmd_size = sizeof(blk_status_t); in scm_blk_dev_setup() 460 bdev->tag_set.nr_hw_queues = nr_requests; in scm_blk_dev_setup() 461 bdev->tag_set.queue_depth = nr_requests_per_io * nr_requests; in scm_blk_dev_setup() 462 bdev->tag_set.numa_node = NUMA_NO_NODE; in scm_blk_dev_setup() 464 ret = blk_mq_alloc_tag_set(&bdev->tag_set); in scm_blk_dev_setup() 468 bdev->gendisk = blk_mq_alloc_disk(&bdev->tag_set, &lim, scmdev); in scm_blk_dev_setup() 500 blk_mq_free_tag_set(&bdev->tag_set); in scm_blk_dev_setup() 510 blk_mq_free_tag_set(&bdev->tag_set); in scm_blk_dev_cleanup()
|
| /linux/drivers/block/null_blk/ |
| H A D | main.c | 72 static struct blk_mq_tag_set tag_set; variable 407 set = dev->nullb->tag_set; in nullb_update_nr_hw_queues() 1780 if (nullb->tag_set == &nullb->__tag_set) in null_del_dev() 1781 blk_mq_free_tag_set(nullb->tag_set); in null_del_dev() 1845 if (tag_set.ops) in null_init_global_tag_set() 1848 tag_set.nr_hw_queues = g_submit_queues; in null_init_global_tag_set() 1849 tag_set.queue_depth = g_hw_queue_depth; in null_init_global_tag_set() 1850 tag_set.numa_node = g_home_node; in null_init_global_tag_set() 1852 tag_set.flags |= BLK_MQ_F_NO_SCHED_BY_DEFAULT; in null_init_global_tag_set() 1854 tag_set.flags |= BLK_MQ_F_TAG_HCTX_SHARED; in null_init_global_tag_set() [all …]
|
| /linux/include/scsi/ |
| H A D | scsi_tcq.h | 32 if (hwq < shost->tag_set.nr_hw_queues) { in scsi_host_find_tag() 33 req = blk_mq_tag_to_rq(shost->tag_set.tags[hwq], in scsi_host_find_tag()
|
| /linux/drivers/block/rnbd/ |
| H A D | rnbd-clt.c | 739 if (sess->tag_set.tags) in destroy_mq_tags() 740 blk_mq_free_tag_set(&sess->tag_set); in destroy_mq_tags() 1208 struct blk_mq_tag_set *tag_set = &sess->tag_set; in setup_mq_tags() local 1210 memset(tag_set, 0, sizeof(*tag_set)); in setup_mq_tags() 1211 tag_set->ops = &rnbd_mq_ops; in setup_mq_tags() 1212 tag_set->queue_depth = sess->queue_depth; in setup_mq_tags() 1213 tag_set->numa_node = NUMA_NO_NODE; in setup_mq_tags() 1214 tag_set->flags = BLK_MQ_F_TAG_QUEUE_SHARED; in setup_mq_tags() 1215 tag_set->cmd_size = sizeof(struct rnbd_iu) + RNBD_RDMA_SGL_SIZE; in setup_mq_tags() 1218 tag_set->nr_maps = sess->nr_poll_queues ? HCTX_MAX_TYPES : 2; in setup_mq_tags() [all …]
|
| /linux/drivers/scsi/ |
| H A D | scsi_lib.c | 2012 struct Scsi_Host *shost = container_of(set, struct Scsi_Host, tag_set); in scsi_map_queues() 2106 struct blk_mq_tag_set *tag_set = &shost->tag_set; in scsi_mq_setup_tags() local 2115 memset(tag_set, 0, sizeof(*tag_set)); in scsi_mq_setup_tags() 2117 tag_set->ops = &scsi_mq_ops; in scsi_mq_setup_tags() 2119 tag_set->ops = &scsi_mq_ops_no_commit; in scsi_mq_setup_tags() 2120 tag_set->nr_hw_queues = shost->nr_hw_queues ? : 1; in scsi_mq_setup_tags() 2121 tag_set->nr_maps = shost->nr_maps ? : 1; in scsi_mq_setup_tags() 2122 tag_set->queue_depth = shost->can_queue + shost->nr_reserved_cmds; in scsi_mq_setup_tags() 2123 tag_set->reserved_tags = shost->nr_reserved_cmds; in scsi_mq_setup_tags() 2124 tag_set->cmd_size = cmd_size; in scsi_mq_setup_tags() [all …]
|
| /linux/arch/um/drivers/ |
| H A D | ubd_kern.c | 159 struct blk_mq_tag_set tag_set; member 784 blk_mq_free_tag_set(&ubd_dev->tag_set); in ubd_device_release() 865 ubd_dev->tag_set.ops = &ubd_mq_ops; in ubd_add() 866 ubd_dev->tag_set.queue_depth = 64; in ubd_add() 867 ubd_dev->tag_set.numa_node = NUMA_NO_NODE; in ubd_add() 868 ubd_dev->tag_set.driver_data = ubd_dev; in ubd_add() 869 ubd_dev->tag_set.nr_hw_queues = 1; in ubd_add() 871 err = blk_mq_alloc_tag_set(&ubd_dev->tag_set); in ubd_add() 875 disk = blk_mq_alloc_disk(&ubd_dev->tag_set, &lim, ubd_dev); in ubd_add() 907 blk_mq_free_tag_set(&ubd_dev->tag_set); in ubd_add()
|
| /linux/drivers/cdrom/ |
| H A D | gdrom.c | 104 struct blk_mq_tag_set tag_set; member 779 err = blk_mq_alloc_sq_tag_set(&gd.tag_set, &gdrom_mq_ops, 1, in probe_gdrom() 784 gd.disk = blk_mq_alloc_disk(&gd.tag_set, &lim, NULL); in probe_gdrom() 825 blk_mq_free_tag_set(&gd.tag_set); in probe_gdrom() 837 blk_mq_free_tag_set(&gd.tag_set); in remove_gdrom()
|
| /linux/drivers/nvme/target/ |
| H A D | loop.c | 35 struct blk_mq_tag_set tag_set; member 90 return queue->ctrl->tag_set.tags[queue_idx - 1]; in nvme_loop_tagset() 213 (set == &ctrl->tag_set) ? hctx_idx + 1 : 0); in nvme_loop_init_request() 482 blk_mq_update_nr_hw_queues(&ctrl->tag_set, in nvme_loop_reset_ctrl_work() 525 ret = nvme_alloc_io_tag_set(&ctrl->ctrl, &ctrl->tag_set, in nvme_loop_create_io_queues()
|