lkml.org 
[lkml]   [2016]   [Jul]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 05/13] irq/msi: Make use of affinity aware allocations
    Date
    From: Thomas Gleixner <tglx@linutronix.de>

    Allow the MSI code to provide affinity hints per MSI descriptor.

    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    ---
    include/linux/msi.h | 2 ++
    kernel/irq/msi.c | 2 +-
    2 files changed, 3 insertions(+), 1 deletion(-)

    diff --git a/include/linux/msi.h b/include/linux/msi.h
    index c33abfa..4f0bfe5 100644
    --- a/include/linux/msi.h
    +++ b/include/linux/msi.h
    @@ -47,6 +47,7 @@ struct fsl_mc_msi_desc {
    * @nvec_used: The number of vectors used
    * @dev: Pointer to the device which uses this descriptor
    * @msg: The last set MSI message cached for reuse
    + * @affinity: Optional pointer to a cpu affinity mask for this descriptor
    *
    * @masked: [PCI MSI/X] Mask bits
    * @is_msix: [PCI MSI/X] True if MSI-X
    @@ -67,6 +68,7 @@ struct msi_desc {
    unsigned int nvec_used;
    struct device *dev;
    struct msi_msg msg;
    + const struct cpumask *affinity;

    union {
    /* PCI MSI/X specific data */
    diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
    index 58dbbac..0e2a736 100644
    --- a/kernel/irq/msi.c
    +++ b/kernel/irq/msi.c
    @@ -335,7 +335,7 @@ int msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev,

    virq = __irq_domain_alloc_irqs(domain, -1, desc->nvec_used,
    dev_to_node(dev), &arg, false,
    - NULL);
    + desc->affinity);
    if (virq < 0) {
    ret = -ENOSPC;
    if (ops->handle_error)
    --
    2.1.4
    \
     
     \ /
      Last update: 2016-07-04 11:21    [W:4.239 / U:0.996 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site