kernel_optimize_test/block
Jens Axboe b3c661b15d blk-mq: support multiple hctx maps
Add support for the tag set carrying multiple queue maps, and
for the driver to inform blk-mq how many it wishes to support
through setting set->nr_maps.

This adds an mq_ops helper for drivers that support more than 1
map, mq_ops->rq_flags_to_type(). The function takes request/bio
flags and CPU, and returns a queue map index for that. We then
use the type information in blk_mq_map_queue() to index the map
set.

Reviewed-by: Hannes Reinecke <hare@suse.com>
Reviewed-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2018-11-07 13:44:59 -07:00
..
partitions partitions/aix: append null character to print data from disk 2018-07-27 09:17:41 -06:00
badblocks.c badblocks: fix wrong return value in badblocks_set if badblocks are disabled 2017-11-03 11:29:50 -07:00
bfq-cgroup.c blkcg: revert blkcg cleanups series 2018-11-01 19:59:53 -06:00
bfq-iosched.c block: get rid of MQ scheduler ops union 2018-11-07 13:42:32 -07:00
bfq-iosched.h block, bfq: improve asymmetric scenarios detection 2018-10-13 15:40:00 -06:00
bfq-wf2q.c block, bfq: fix asymmetric scenarios detection 2018-10-25 11:17:40 -06:00
bio-integrity.c block: remove bio_rewind_iter() 2018-09-06 15:12:24 -06:00
bio.c for-linus-20181102 2018-11-02 11:25:48 -07:00
blk-cgroup.c block: remove request_list code 2018-11-07 13:42:33 -07:00
blk-core.c block: kill request ->cpu member 2018-11-07 13:42:33 -07:00
blk-exec.c block: remove dead elevator code 2018-11-07 13:42:32 -07:00
blk-flush.c blk-mq: pass in request/bio flags to queue mapping 2018-11-07 13:44:59 -07:00
blk-integrity.c block: merge BIOVEC_SEG_BOUNDARY into biovec_phys_mergeable 2018-09-24 12:33:57 -06:00
blk-ioc.c block: get rid of MQ scheduler ops union 2018-11-07 13:42:32 -07:00
blk-iolatency.c for-linus-20181102 2018-11-02 11:25:48 -07:00
blk-lib.c block: Improve zone reset execution 2018-10-25 11:17:40 -06:00
blk-map.c Merge branch 'for-4.16/block' of git://git.kernel.dk/linux-block 2018-01-29 11:51:49 -08:00
blk-merge.c block: kill request ->cpu member 2018-11-07 13:42:33 -07:00
blk-mq-cpumap.c blk-mq: abstract out queue map 2018-11-07 13:44:59 -07:00
blk-mq-debugfs-zoned.c block: Make struct request_queue smaller for CONFIG_BLK_DEV_ZONED=n 2018-07-09 09:07:52 -06:00
blk-mq-debugfs.c blk-mq: pass in request/bio flags to queue mapping 2018-11-07 13:44:59 -07:00
blk-mq-debugfs.h block: Make struct request_queue smaller for CONFIG_BLK_DEV_ZONED=n 2018-07-09 09:07:52 -06:00
blk-mq-pci.c blk-mq: abstract out queue map 2018-11-07 13:44:59 -07:00
blk-mq-rdma.c blk-mq: abstract out queue map 2018-11-07 13:44:59 -07:00
blk-mq-sched.c blk-mq: allow software queue to map to multiple hardware queues 2018-11-07 13:44:59 -07:00
blk-mq-sched.h block: get rid of MQ scheduler ops union 2018-11-07 13:42:32 -07:00
blk-mq-sysfs.c blk-mq: add 'type' attribute to the sysfs hctx directory 2018-11-07 13:44:59 -07:00
blk-mq-tag.c blk-mq: pass in request/bio flags to queue mapping 2018-11-07 13:44:59 -07:00
blk-mq-tag.h Merge branch 'for-4.15/block' of git://git.kernel.dk/linux-block 2017-11-14 15:32:19 -08:00
blk-mq-virtio.c blk-mq: abstract out queue map 2018-11-07 13:44:59 -07:00
blk-mq.c blk-mq: support multiple hctx maps 2018-11-07 13:44:59 -07:00
blk-mq.h blk-mq: support multiple hctx maps 2018-11-07 13:44:59 -07:00
blk-pm.c blk-mq: Enable support for runtime power management 2018-09-26 15:11:29 -06:00
blk-pm.h block: Split blk_pm_add_request() and blk_pm_put_request() 2018-09-26 15:11:28 -06:00
blk-rq-qos.c blk-rq-qos: make depth comparisons unsigned 2018-07-22 11:30:53 -06:00
blk-rq-qos.h blk-rq-qos: make depth comparisons unsigned 2018-07-22 11:30:53 -06:00
blk-settings.c block: get rid of q->softirq_done_fn() 2018-11-07 13:42:33 -07:00
blk-softirq.c block: kill request ->cpu member 2018-11-07 13:42:33 -07:00
blk-stat.c block: export blk_stat_enable_accounting() 2018-09-27 17:34:54 -06:00
blk-stat.h blk-stat: export helpers for modifying blk_rq_stat 2018-07-09 09:07:54 -06:00
blk-sysfs.c block: remove dead elevator code 2018-11-07 13:42:32 -07:00
blk-throttle.c blkcg: revert blkcg cleanups series 2018-11-01 19:59:53 -06:00
blk-timeout.c block: kill legacy parts of timeout handling 2018-11-07 13:42:33 -07:00
blk-wbt.c blk-wbt: kill check for legacy queue type 2018-11-07 13:42:32 -07:00
blk-wbt.h block: remove external dependency on wbt_flags 2018-07-09 09:07:54 -06:00
blk-zoned.c block: Introduce blk_revalidate_disk_zones() 2018-10-25 11:17:40 -06:00
blk.h blk-mq: pass in request/bio flags to queue mapping 2018-11-07 13:44:59 -07:00
bounce.c for-linus-20181102 2018-11-02 11:25:48 -07:00
bsg-lib.c bsg: move bsg-lib parts outside of request queue 2018-11-07 13:42:33 -07:00
bsg.c block: bsg: move atomic_t ref_count variable to refcount API 2018-08-27 19:17:02 -06:00
cmdline-parser.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
compat_ioctl.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
elevator.c block: get rid of MQ scheduler ops union 2018-11-07 13:42:32 -07:00
genhd.c This is the 4.19-rc6 release 2018-10-01 08:58:57 -06:00
ioctl.c block: Introduce BLKGETNRZONES ioctl 2018-10-25 11:17:40 -06:00
ioprio.c block: add ioprio_check_cap function 2018-05-31 10:50:54 -04:00
Kconfig blk-wbt: kill check for legacy queue type 2018-11-07 13:42:32 -07:00
Kconfig.iosched block: remove legacy IO schedulers 2018-11-07 13:42:32 -07:00
kyber-iosched.c blk-mq: allow software queue to map to multiple hardware queues 2018-11-07 13:44:59 -07:00
Makefile block: remove legacy IO schedulers 2018-11-07 13:42:32 -07:00
mq-deadline.c block: get rid of MQ scheduler ops union 2018-11-07 13:42:32 -07:00
opal_proto.h block: sed-opal: Set MBRDone on S3 resume path if TPER is MBREnabled 2017-09-11 09:45:52 -06:00
partition-generic.c block: use nanosecond resolution for iostat 2018-09-21 20:26:59 -06:00
scsi_ioctl.c block: consistently use GFP_NOIO instead of __GFP_NORECLAIM 2018-05-14 08:55:18 -06:00
sed-opal.c block: sed-opal: Fix a couple off by one bugs 2018-06-20 12:04:06 -06:00
t10-pi.c block: move dif_prepare/dif_complete functions to block layer 2018-07-30 08:27:02 -06:00