Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

blk-mq: remove unused queue mapping helpers

There are no users left of the pci and virtio queue mapping helpers.
Thus remove them.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Daniel Wagner <wagi@kernel.org>
Link: https://lore.kernel.org/r/20241202-refactor-blk-affinity-helpers-v6-8-27211e9c2cd5@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>

authored by

Daniel Wagner and committed by
Jens Axboe
9bc1e897 a5665c3d

-116
-2
block/Makefile
··· 27 27 obj-$(CONFIG_IOSCHED_BFQ) += bfq.o 28 28 29 29 obj-$(CONFIG_BLK_DEV_INTEGRITY) += bio-integrity.o blk-integrity.o t10-pi.o 30 - obj-$(CONFIG_BLK_MQ_PCI) += blk-mq-pci.o 31 - obj-$(CONFIG_BLK_MQ_VIRTIO) += blk-mq-virtio.o 32 30 obj-$(CONFIG_BLK_DEV_ZONED) += blk-zoned.o 33 31 obj-$(CONFIG_BLK_WBT) += blk-wbt.o 34 32 obj-$(CONFIG_BLK_DEBUG_FS) += blk-mq-debugfs.o
-46
block/blk-mq-pci.c
··· 1 - // SPDX-License-Identifier: GPL-2.0 2 - /* 3 - * Copyright (c) 2016 Christoph Hellwig. 4 - */ 5 - #include <linux/kobject.h> 6 - #include <linux/blkdev.h> 7 - #include <linux/blk-mq-pci.h> 8 - #include <linux/pci.h> 9 - #include <linux/module.h> 10 - 11 - #include "blk-mq.h" 12 - 13 - /** 14 - * blk_mq_pci_map_queues - provide a default queue mapping for PCI device 15 - * @qmap: CPU to hardware queue map. 16 - * @pdev: PCI device associated with @set. 17 - * @offset: Offset to use for the pci irq vector 18 - * 19 - * This function assumes the PCI device @pdev has at least as many available 20 - * interrupt vectors as @set has queues. It will then query the vector 21 - * corresponding to each queue for it's affinity mask and built queue mapping 22 - * that maps a queue to the CPUs that have irq affinity for the corresponding 23 - * vector. 24 - */ 25 - void blk_mq_pci_map_queues(struct blk_mq_queue_map *qmap, struct pci_dev *pdev, 26 - int offset) 27 - { 28 - const struct cpumask *mask; 29 - unsigned int queue, cpu; 30 - 31 - for (queue = 0; queue < qmap->nr_queues; queue++) { 32 - mask = pci_irq_get_affinity(pdev, queue + offset); 33 - if (!mask) 34 - goto fallback; 35 - 36 - for_each_cpu(cpu, mask) 37 - qmap->mq_map[cpu] = qmap->queue_offset + queue; 38 - } 39 - 40 - return; 41 - 42 - fallback: 43 - WARN_ON_ONCE(qmap->nr_queues > 1); 44 - blk_mq_clear_mq_map(qmap); 45 - } 46 - EXPORT_SYMBOL_GPL(blk_mq_pci_map_queues);
-46
block/blk-mq-virtio.c
··· 1 - // SPDX-License-Identifier: GPL-2.0 2 - /* 3 - * Copyright (c) 2016 Christoph Hellwig. 4 - */ 5 - #include <linux/device.h> 6 - #include <linux/blk-mq-virtio.h> 7 - #include <linux/virtio_config.h> 8 - #include <linux/module.h> 9 - #include "blk-mq.h" 10 - 11 - /** 12 - * blk_mq_virtio_map_queues - provide a default queue mapping for virtio device 13 - * @qmap: CPU to hardware queue map. 14 - * @vdev: virtio device to provide a mapping for. 15 - * @first_vec: first interrupt vectors to use for queues (usually 0) 16 - * 17 - * This function assumes the virtio device @vdev has at least as many available 18 - * interrupt vectors as @set has queues. It will then query the vector 19 - * corresponding to each queue for it's affinity mask and built queue mapping 20 - * that maps a queue to the CPUs that have irq affinity for the corresponding 21 - * vector. 22 - */ 23 - void blk_mq_virtio_map_queues(struct blk_mq_queue_map *qmap, 24 - struct virtio_device *vdev, int first_vec) 25 - { 26 - const struct cpumask *mask; 27 - unsigned int queue, cpu; 28 - 29 - if (!vdev->config->get_vq_affinity) 30 - goto fallback; 31 - 32 - for (queue = 0; queue < qmap->nr_queues; queue++) { 33 - mask = vdev->config->get_vq_affinity(vdev, first_vec + queue); 34 - if (!mask) 35 - goto fallback; 36 - 37 - for_each_cpu(cpu, mask) 38 - qmap->mq_map[cpu] = qmap->queue_offset + queue; 39 - } 40 - 41 - return; 42 - 43 - fallback: 44 - blk_mq_map_queues(qmap); 45 - } 46 - EXPORT_SYMBOL_GPL(blk_mq_virtio_map_queues);
-11
include/linux/blk-mq-pci.h
··· 1 - /* SPDX-License-Identifier: GPL-2.0 */ 2 - #ifndef _LINUX_BLK_MQ_PCI_H 3 - #define _LINUX_BLK_MQ_PCI_H 4 - 5 - struct blk_mq_queue_map; 6 - struct pci_dev; 7 - 8 - void blk_mq_pci_map_queues(struct blk_mq_queue_map *qmap, struct pci_dev *pdev, 9 - int offset); 10 - 11 - #endif /* _LINUX_BLK_MQ_PCI_H */
-11
include/linux/blk-mq-virtio.h
··· 1 - /* SPDX-License-Identifier: GPL-2.0 */ 2 - #ifndef _LINUX_BLK_MQ_VIRTIO_H 3 - #define _LINUX_BLK_MQ_VIRTIO_H 4 - 5 - struct blk_mq_queue_map; 6 - struct virtio_device; 7 - 8 - void blk_mq_virtio_map_queues(struct blk_mq_queue_map *qmap, 9 - struct virtio_device *vdev, int first_vec); 10 - 11 - #endif /* _LINUX_BLK_MQ_VIRTIO_H */