diff options
author | Jens Axboe <axboe@kernel.dk> | 2018-11-02 22:59:51 +0800 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2018-11-05 12:16:27 +0100 |
commit | 6da4b3ab9a6e9b1b5f90322ab3fa3a7dd18edb19 (patch) | |
tree | 36ce19a44fb7ac5ff3308a6457e17835444041b3 /include/linux/interrupt.h | |
parent | 060746d9e394084b7401e7532f2de528ecbfb521 (diff) | |
download | talos-op-linux-6da4b3ab9a6e9b1b5f90322ab3fa3a7dd18edb19.tar.gz talos-op-linux-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.h | 4 |
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) |