> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > Michal Schmidt > Sent: Thursday, May 23, 2024 4:43 AM > To: Brandeburg, Jesse <[email protected]>; Nguyen, Anthony L > <[email protected]>; [email protected] > Cc: [email protected]; Thomas Gleixner <[email protected]>; Nitesh > Narayan Lal <[email protected]> > Subject: [Intel-wired-lan] [PATCH iwl-next] ice: use > irq_update_affinity_hint() > > irq_set_affinity_hint() is deprecated. Use irq_update_affinity_hint() > instead. This removes the side-effect of actually applying the affinity. > > The driver does not really need to worry about spreading its IRQs across > CPUs. The core code already takes care of that. > On the contrary, when the driver applies affinities by itself, it breaks the > users' expectations: > 1. The user configures irqbalance with IRQBALANCE_BANNED_CPULIST in > order to prevent IRQs from being moved to certain CPUs that run a > real-time workload. > 2. ice reconfigures VSIs at runtime due to a MIB change > (ice_dcb_process_lldp_set_mib_change). Reopening a VSI resets the > affinity in ice_vsi_req_irq_msix(). > 3. ice has no idea about irqbalance's config, so it may move an IRQ to > a banned CPU. The real-time workload suffers unacceptable latency. > > I am not sure if updating the affinity hints is at all useful, because > irqbalance ignores them since 2016 ([1]), but at least it's harmless. > > This ice change is similar to i40e commit d34c54d1739c ("i40e: Use > irq_update_affinity_hint()"). > > [1] https://github.com/Irqbalance/irqbalance/commit/dcc411e7bfdd > > Signed-off-by: Michal Schmidt <[email protected]> > --- > drivers/net/ethernet/intel/ice/ice_lib.c | 4 ++-- > drivers/net/ethernet/intel/ice/ice_main.c | 4 ++-- > 2 files changed, 4 insertions(+), 4 deletions(-) >
Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
