aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/interrupt.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2018-11-02 22:59:51 +0800
committerThomas Gleixner <tglx@linutronix.de>2018-11-05 12:16:27 +0100
commit6da4b3ab9a6e9b1b5f90322ab3fa3a7dd18edb19 (patch)
tree36ce19a44fb7ac5ff3308a6457e17835444041b3 /include/linux/interrupt.h
parentgenirq/affinity: Pass first vector to __irq_build_affinity_masks() (diff)
downloadlinux-dev-6da4b3ab9a6e9b1b5f90322ab3fa3a7dd18edb19.tar.xz
linux-dev-6da4b3ab9a6e9b1b5f90322ab3fa3a7dd18edb19.zip
genirq/affinity: Add support for allocating interrupt sets
A driver may have a need to allocate multiple sets of MSI/MSI-X interrupts, and have them appropriately affinitized. Add support for defining a number of sets in the irq_affinity structure, of varying sizes, and get each set affinitized correctly across the machine. [ tglx: Minor changelog tweaks ] Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Ming Lei <ming.lei@redhat.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Hannes Reinecke <hare@suse.com> Reviewed-by: Ming Lei <ming.lei@redhat.com> Reviewed-by: Keith Busch <keith.busch@intel.com> Reviewed-by: Sagi Grimberg <sagi@grimberg.me> Cc: linux-block@vger.kernel.org Link: https://lkml.kernel.org/r/20181102145951.31979-5-ming.lei@redhat.com
Diffstat (limited to 'include/linux/interrupt.h')
-rw-r--r--include/linux/interrupt.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
index 1d6711c28271..ca397ff40836 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
@@ -247,10 +247,14 @@ struct irq_affinity_notify {
* the MSI(-X) vector space
* @post_vectors: Don't apply affinity to @post_vectors at end of
* the MSI(-X) vector space
+ * @nr_sets: Length of passed in *sets array
+ * @sets: Number of affinitized sets
*/
struct irq_affinity {
int pre_vectors;
int post_vectors;
+ int nr_sets;
+ int *sets;
};
#if defined(CONFIG_SMP)