• Sreekanth Reddy's avatar
    mpt2sas, mpt3sas: set cpu affinity for each MSIX vectors · 14b3114d
    Sreekanth Reddy authored
    Added a support to set cpu affinity mask for each MSIX vector enabled
    by the HBA. So that, running the irqbalancer will balance interrupts among
    the cpus.
    
    Change_set:
    1. Added affinity_hint varable of type cpumask_var_t in adapter_reply_queue
       structure. And allocated a memory for this varable by calling
       alloc_cpumask_var.
    2. Call the API irq_set_affinity_hint for each MSIx vector to affiniate it
       with calculated cpus at driver inilization time.
    3. While freeing the MSIX vector, call this same API to release the cpu
       affinity mask for each MSIx vector by providing the NULL value in
       cpumask argument.
    4. then call the free_cpumask_var API to free the memory allocated in step 2.
    Signed-off-by: default avatarSreekanth Reddy <Sreekanth.Reddy@avagotech.com>
    Reviewed-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    14b3114d
mpt2sas_base.c 138 KB