Patch "blk-mq-pci: add a fallback when pci_irq_get_affinity returns NULL" has been added to the 4.12-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
blk-mq-pci: add a fallback when pci_irq_get_affinity returns NULL
to the 4.12-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
blk-mq-pci-add-a-fallback-when-pci_irq_get_affinity-returns-null.patch
and it can be found in the queue-4.12 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
c005390374957baacbc38eef96ea360559510aa7Mon Sep 17 00:00:00 2001
From: Christoph Hellwig <[email protected]>
Date: Thu, 17 Aug 2017 12:24:47 +0200
Subject: blk-mq-pci: add a fallback when pci_irq_get_affinity returns NULL
From: Christoph Hellwig <[email protected]>
commit c005390374957baacbc38eef96ea360559510aa7 upstream.
While pci_irq_get_affinity should never fail for SMP kernel that implement the affinity mapping, it will always return NULL in the UP case, so provide a fallback mapping of all queues to CPU 0 in that case.
--- block/blk-mq-pci.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
block/blk-mq-pci.c +7 -1
@@ -36,12 +36,18 @@ int blk_mq_pci_map_queues(struct blk_mq_for (queue =0 ; queue < set->nr_hw_queues; queue++) { mask =pci_irq_get_affinity (pdev, queue);if (!mask) -return -EINVAL ; + goto fallback;for_each_cpu (cpu, mask) set->mq_map[cpu] = queue; }return 0 ; + +fallback: +WARN_ON_ONCE (set->nr_hw_queues >1 ); +for_each_possible_cpu (cpu) + set->mq_map[cpu] =0 ; +return 0 ; }EXPORT_SYMBOL_GPL (blk_mq_pci_map_queues);
Patches currently in stable-queue which might be from [email protected] are
queue-4.12/blk-mq-pci-add-a-fallback-when-pci_irq_get_affinity-returns-null.patch