On Mon, 28 Sep 2015, Ming Lei wrote:
This patchset introduces .map_changed callback into 'struct blk_mq_ops', and use this callback to get NVMe notified about the mapping changed event, then NVMe can update the irq affinity hint for its queues.
I think this is going the wrong direction. Shouldn't we provide blk-mq the vectors in the tag set so that layer can manage the irq hints? This could lead to more cpu-queue assignment optimizations from using that information. For example, two h/w contexts sharing the same vector shouldn't be assigned to cpus on different NUMA nodes.
Also the 'cpumask' in 'struct blk_mq_tags' isn't needed any more, so remove that and related kernel interface.
It was added to the tags because the cpu mask is an artifact of the tags rather that duplicating it across all the h/w contexts sharing the same set. It also doesn't let a h/w context from one namespace overwrite another's cpu affinity mask when they share the same vector. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/