[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aNZtJoFrOv8dHlkV@raptor>
Date: Fri, 26 Sep 2025 11:38:30 +0100
From: Alexandru Elisei <alexandru.elisei@....com>
To: Marc Zyngier <maz@...nel.org>
Cc: linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-acpi@...r.kernel.org, Thomas Gleixner <tglx@...utronix.de>,
Mark Rutland <mark.rutland@....com>, Will Deacon <will@...nel.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Rob Herring <robh@...nel.org>,
Saravana Kannan <saravanak@...gle.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Sven Peter <sven@...nel.org>, Janne Grunau <j@...nau.net>,
Suzuki K Poulose <suzuki.poulose@....com>,
James Clark <james.clark@...aro.org>,
Jonathan Cameron <jonathan.cameron@...wei.com>
Subject: Re: [PATCH v3 00/26] genirq: Add support for percpu_devid IRQ
affinity
Hi,
Tested this on a rockpro64 - 4xA53 + 2xA72.
On kernel v6.17-rc5, using perf to profile iperf3 for 10 seconds, the top
overhead symbol was _raw_spinlock_irq_restore() and the PMU wasn't using NMIs
(checked by printing has_nmi after armpmu_request_irq()).
With this series, same test, *irq_restore() overhead dropped to about 1% on the
little core, below 1% on the big core, and the PMU was using NMIs.
Thanks,
Alex
On Mon, Sep 22, 2025 at 09:28:07AM +0100, Marc Zyngier wrote:
> This is the third version of this series, originally posted at [1],
> which aims at allowing percpu_devid interrupt requests on the basis of
> an affinity mask. See the original submission for the details of why
> this is a desirable outcome.
>
> From v2, we have some tidying up, thanks to Jonathan's review -- see
> changelog for details.
>
> FWIW, I've pushed a branch at [3].
>
> * From v2 [2]:
>
> - Turned of_node_to_fwnode() usage to of_fwnode_handle() (Jonathan)
>
> - Added a patch to finally kill of_node_to_fwnode()
>
> - Tidied-up documentation, comments and formatting (Jonathan)
>
> - Collected ABs and Rbs, with thanks (Jonathan, Suzuki, Sven)
>
> * From v1 [1]:
>
> - Fixed NMI handling by getting rid of the NMI-specific flow
> handler, which was pretty useless anyway (Will)
>
> - As a result, killed a metric buttload worth of GICv3 code
>
> - Moved irq_fwspec out of irq_fwspec_info, and passed it as a
> parameter to irq_get_fwspec_info(), renamed from irq_get_info(),
> and applied some generous sanitisation of the structure (Thomas)
>
> - Dropped the rather useless fwspec validity flag (Thomas)
>
> - Rejigged the PMU per-CPU handling to better deal with the DT/ACPI
> differences, and drop some now useless patches (Will)
>
> - Plenty of cosmetic rework (Raphael, Thomas)
>
> [1] https://lore.kernel.org/r/20250908163127.2462948-1-maz@kernel.org
> [2] https://lore.kernel.org/r/20250915085702.519996-1-maz@kernel.org
> [3] git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git irq/ppi-affinity
Powered by blists - more mailing lists