Re: [PATCH v2 1/2] MIPS: SGI-IP27: micro-optimize arch_init_irq()

From: Thomas Bogendoerfer
Date: Wed Apr 17 2024 - 07:14:34 EST


On Tue, Apr 16, 2024 at 10:37:10AM -0700, Yury Norov wrote:
> The function sets adjusted groups of bits in hub_irq_map by using
> for-loops. There's a bitmap_set() function dedicated to do this.
>
> Because [0, CPU_CALL_B_IRQ] and [NI_BRDCAST_ERR_A, MSC_PANIC_INTR]
> ranges belong to the same machine word, bitmap_set() would boil down
> to an inline wrapper in both cases, avoiding generating a loop, with
> the associate overhead. Effectively, it would be a compile-time:
>
> *hub_irq_map = GENMASK() | GENMASK();
>
> Signed-off-by: Yury Norov <yury.norov@xxxxxxxxx>
> ---
> arch/mips/sgi-ip27/ip27-irq.c | 8 ++------
> 1 file changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/arch/mips/sgi-ip27/ip27-irq.c b/arch/mips/sgi-ip27/ip27-irq.c
> index 8f5299b269e7..d8acdf0439d2 100644
> --- a/arch/mips/sgi-ip27/ip27-irq.c
> +++ b/arch/mips/sgi-ip27/ip27-irq.c
> @@ -277,7 +277,6 @@ void __init arch_init_irq(void)
> {
> struct irq_domain *domain;
> struct fwnode_handle *fn;
> - int i;

I've already applied your first version, so I need an incremental
patch, which just removes the unused variable.

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]