mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Farber, Eliav" <farbere@amazon.com>
To: Thomas Gleixner <tglx@kernel.org>, "Shenhar, Talel" <talel@amazon.com>
Cc: Radu Rendec <radu@rendec.net>, Rob Herring <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH v4 8/8] irqchip/al-fic: add irq_set_affinity callback
Date: Sun, 11 Oct 2026 05:01:32 +0000	[thread overview]
Message-ID: <BY3PR18MB472230FEF12ADE458EECF2E4C6902@BY3PR18MB4722.namprd18.prod.outlook.com> (raw)
In-Reply-To: <87jynpfi4v.ffs@fw13>

On Sat, Oct 10 2026 at 21:52, Thomas Gleixner wrote:
> On Thu, Oct 08 2026 at 09:00, Eliav Farber wrote:
>> The FIC aggregates up to 32 interrupt sources into a single parent GIC
>> SPI and has no per-child affinity control; affinity is determined by
>> the parent GIC SPI routing.
>>
>> irq_set_affinity() fails with -EINVAL when the target irqchip has no
>> irq_set_affinity callback, which prevents drivers that call it from
>> probing when their interrupt is routed through a FIC instance. Add an
>> irq_set_affinity callback that returns IRQ_SET_MASK_OK_DONE
>> unconditionally.
>>
>> Affinity requests cannot be forwarded to the parent GIC SPI, because
>> it may be shared by several FIC instances and changing its affinity
>> for one child would silently move all the others. A pr_warn_once() is
>> emitted when the requested affinity differs from the parent's current
>> affinity, giving visibility without failing the caller.
>
> No. That's a horrible hack and just pretends to solve a problem.
>
> We have the interrupt redirection infrastructure to handle that
> correctly. See fcc1d0dabd and subsequent commits.

Thanks, that's exactly what v5 uses. Dropped this patch and implemented
per-child affinity with irq_chip_redirect_set_affinity() and
generic_handle_demux_domain_irq(), with an irq_pre_redirect callback to
move the ack (and mask, for level-triggered groups) into parent context.
Tested on our hardware: a child pinned away from the parent SPI's CPU
runs on its target CPU with no re-fire storm.

Will send v5 shortly.

Thanks,
Eliav

      reply	other threads:[~2026-10-11  5:01 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-08  9:00 [PATCH v4 0/8] irqchip/al-fic: shared parent IRQ, error/fatal outputs and affinity Eliav Farber
2026-10-08  9:00 ` [PATCH v4 1/8] irqchip/al-fic: fix argument alignment and a repeated word Eliav Farber
2026-10-08  9:00 ` [PATCH v4 2/8] irqchip/al-fic: use %pOF and raise init log level Eliav Farber
2026-10-08  9:00 ` [PATCH v4 3/8] irqchip/al-fic: keep the device_node instead of a cached name string Eliav Farber
2026-10-10 15:33   ` Radu Rendec
2026-10-10 18:28     ` Farber, Eliav
2026-10-08  9:00 ` [PATCH v4 4/8] irqchip/al-fic: switch to shared parent interrupt Eliav Farber
2026-10-10 17:19   ` Radu Rendec
2026-10-08  9:00 ` [PATCH v4 5/8] dt-bindings: interrupt-controller: amazon,al-fic: add mask selection Eliav Farber
2026-10-08  9:00 ` [PATCH v4 6/8] irqchip/al-fic: support error and fatal outputs and FIC v2 Eliav Farber
2026-10-10 17:43   ` Radu Rendec
2026-10-08  9:00 ` [PATCH v4 7/8] irqchip/al-fic: add support for FIC v3 Eliav Farber
2026-10-08  9:00 ` [PATCH v4 8/8] irqchip/al-fic: add irq_set_affinity callback Eliav Farber
2026-10-10 19:52   ` Thomas Gleixner
2026-10-11  5:01     ` Farber, Eliav [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BY3PR18MB472230FEF12ADE458EECF2E4C6902@BY3PR18MB4722.namprd18.prod.outlook.com \
    --to=farbere@amazon.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=radu@rendec.net \
    --cc=robh@kernel.org \
    --cc=talel@amazon.com \
    --cc=tglx@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®