Re: [PATCH] irqchip: riscv-imsic: Add kernel parameter to disable IPIs

From: Thomas Gleixner
Date: Tue Jul 01 2025 - 03:34:48 EST


On Tue, Jul 01 2025 at 12:00, Anup Patel wrote:
> On Mon, Jun 30, 2025 at 9:39 PM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>> > When injecting IPIs to a set of harts, the IMSIC IPI support will
>> > do a separate MMIO write to SETIPNUM_LE register of each target
>> > hart. This means on a platform where IMSIC is trap-n-emulated,
>> > there will be N MMIO traps when injecting IPI to N target harts
>> > hence IPIs based on IMSIC software injected MSI is slow compared
>> > to the SBI IPI extension.
>> >
>> > Add a kernel parameter to disable IPIs in IMSIC driver for platforms
>> > with trap-n-emulated IMSIC.
>>
>> Why do you need a kernel parameter for that. If the platform uses trap-n
>> emulation, then disable the IPI muck automatically, no?
>>
> Unfortunately, we don't have DT, ACPI, or any other way of discovering
> whether underlying IMSIC is trap-n-emulated. In fact, the DT or ACPI
> passed to a KVM Guest is the same irrespective of whether underlying
> IMSIC is trap-n-emulated or backed by hardware IMSIC VS-file.

Sigh.

> Using software injected MSIs as IPIs is purely a software choice in the
> IMSIC driver so this new kernel parameter allows users to override it.

Please add that information to the change log.

Thanks,

tglx