Skip to content

genirq: Provide new interfaces for affinity hints

Phil Auld requested to merge prauld/centos-stream-9:bz2055300 into main

Bugzilla: http://bugzilla.redhat.com/2055300
Upstream Status: Linux
Tested: Boot sanity tested. Nothing actually uses the new interfaces yet
although a number are effected by the change to irq_set_affinity_hint().

commit 65c7cdedeb3026fabcc967a7aae2f755ad4d0783
Author: Thomas Gleixner tglx@linutronix.de
Date: Fri Sep 3 11:24:17 2021 -0400

genirq: Provide new interfaces for affinity hints  

The discussion about removing the side effect of irq_set_affinity_hint() of  
actually applying the cpumask (if not NULL) as affinity to the interrupt,  
unearthed a few unpleasantries:  

  1) The modular perf drivers rely on the current behaviour for the very  
     wrong reasons.  

  2) While none of the other drivers prevents user space from changing  
     the affinity, a cursorily inspection shows that there are at least  
     expectations in some drivers.  
   nowadays ignores the affinity hint) is disabled.  

Provide new interfaces:  

  irq_update_affinity_hint()  - Only sets the affinity hint pointer  
  irq_set_affinity_and_hint() - Set the pointer and apply the affinity to  
                                the interrupt  

Make irq_set_affinity_hint() a wrapper around irq_apply_affinity_hint() and  
document it to be phased out.  

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Signed-off-by: Nitesh Narayan Lal <nitesh@redhat.com>  
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>  
Reviewed-by: Ming Lei <ming.lei@redhat.com>  
Link: https://lore.kernel.org/r/20210501021832.743094-1-jesse.brandeburg@intel.com  
Link: https://lore.kernel.org/r/20210903152430.244937-2-nitesh@redhat.com  

Signed-off-by: Phil Auld pauld@redhat.com

Edited by Phil Auld

Merge request reports