Why GICD_ITARGETSR is not used by Linux

Li Chen me at linux.beauty
Tue Sep 20 02:45:10 PDT 2022


Hi Arnd,

 ---- On Tue, 20 Sep 2022 09:04:16 +0200  Arnd Bergmann  wrote --- 
 > On Tue, Sep 20, 2022, at 3:42 AM, Li Chen wrote:
 > > Hi Arnd,
 > >
 > > I noticed GIC has GICD_ITARGETSR to distribute IRQ to different CPUs, 
 > > but currently, it is not used by Linux.
 > >
 > > There was a patchset from MTK people: 
 > > http://archive.lwn.net:8080/linux-kernel/1606486531-25719-1-git-send-email-hanks.chen@mediatek.com/T/#t 
 > > which implements GIC-level IRQ distributor using GICD_ITARGETSR, but it 
 > > is 
 > > not accepted because the maintainer thinks it will break existing codes 
 > > and not provide benefits compared with the existing affinity mechanism.
 > >
 > > IIUC, Linux only relies on affinity/irqbalance to distribute IRQ 
 > > instead of architecture-specific solutions like GIC's distributor.
 > >
 > > Maybe latency can somewhat get improved, but there is no benchmark yet.
 > >
 > > I have two questions here:
 > > 1. Now that Linux doesn't use GICD_ITARGETSR, where does it set CPU 0 
 > > to be the only IRQ distributor core?
 > > 2. Do you know any other reasons that GICD_ITARGETSR is not used by 
 > > Linux?
 > 
 > Hi Li,
 > 
 > It looks like the original submitter never followed up
 > with a new version of the patch that addresses the
 > issues found in review. I would assume they gave up either
 > because it did not show any real-world advantage, or they
 > could not address all of the concerns.

Thanks for your reply.

FYI, here is another thread about this topic: https://lore.kernel.org/linux-arm-kernel/20191120105017.GN25745@shell.armlinux.org.uk/

Regards,
Li



More information about the linux-arm-kernel mailing list