Netdev List
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@siemens.com>
To: Jakub Kicinski <kuba@kernel.org>,
	Florian Bezdeka <florian.bezdeka@siemens.com>
Cc: Maxime Chevallier <maxime.chevallier@bootlin.com>,
	Andrew Lunn <andrew+netdev@lunn.ch>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Paolo Abeni <pabeni@redhat.com>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>,
	Yury Norov <yury.norov@gmail.com>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Andrew Morton <akpm@linux-foundation.org>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Clark Williams <clrkwllms@kernel.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Thomas Gleixner <tglx@kernel.org>,
	netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-rt-devel@lists.linux.dev
Subject: Re: [PATCH RFC 2/3] genirq: Honor existing IRQ affinities when setting affinity hints
Date: Fri, 21 Aug 2026 12:38:52 +0200	[thread overview]
Message-ID: <11c2d3c4-ea05-46a2-8579-c5aba1bfa204@siemens.com> (raw)
In-Reply-To: <20260820094153.420202f6@kernel.org>

On 20.08.26 18:41, Jakub Kicinski wrote:
> On Wed, 19 Aug 2026 16:30:31 +0200 Florian Bezdeka wrote:
>> Some device drivers implement an IRQ balancing / spreading mechanism
>> based on cpumask_local_spread() and irq_set_affinity_hint() (deprecated)
>> or irq_set_affinity_and_hint().
> 
> Not an expert on IRQs, but this may make the API even more confusing.
> irq_set_affinity_and_hint() not setting the affinity seems odd.
> 
> I'd go the other way and either have irq_update_affinity_hint() apply
> the affinity if it's safe to do so, or create a new function for
> "defaults".
> 
> Really, the drivers are dumb here, they are just trying to pass to 
> the core a hint which is: This is Nth of X IRQs, please spread them on
> the NUMA node where the device is attached. Ideally this (Nth of X)
> should even be part of request_irq() args. IRQ core already knows the
> device/NUMA node. Drivers juggling multiple flavors of uAPI-shaped API
> is... not very scalable. People rarely get this right.

Fully agree: drivers should not set affinities. They should just express
desires or additional constraints. The ultimately resulting affinity for
an IRQ should be the result of the various constraints that kernel and
userland may express via NUMA placements, isolcpus, some dynamic
isolation/grouping constraints, or you-name-it.

I think we need a big picture how things should eventually look like and
then develop a strategy how to step-wise convert existing code.

Jan

-- 
Siemens AG, Foundational Technologies
Linux Expert Center

  reply	other threads:[~2026-08-21 10:39 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-19 14:30 [PATCH RFC 0/3] genirq: Allow drivers to respect userspace IRQ affinities Florian Bezdeka
2026-08-19 14:30 ` [PATCH RFC 1/3] cpumask: Honor irq_default_affinity in cpumask_local_spread() Florian Bezdeka
2026-08-19 18:38   ` Yury Norov
2026-08-20 16:09     ` Sebastian Andrzej Siewior
2026-08-21 17:14       ` Florian Bezdeka
2026-08-21 16:36     ` Florian Bezdeka
2026-08-19 14:30 ` [PATCH RFC 2/3] genirq: Honor existing IRQ affinities when setting affinity hints Florian Bezdeka
2026-08-20 16:41   ` Jakub Kicinski
2026-08-21 10:38     ` Jan Kiszka [this message]
2026-08-21 10:53       ` Sebastian Andrzej Siewior
2026-08-21 17:30         ` Florian Bezdeka
2026-08-19 14:30 ` [PATCH RFC 3/3] net: stmmac: Migrate IRQ balancing to cpumask_local_spread() Florian Bezdeka
2026-08-19 18:45   ` Yury Norov
2026-08-21 16:40     ` Florian Bezdeka
2026-08-19 18:28 ` [PATCH RFC 0/3] genirq: Allow drivers to respect userspace IRQ affinities Yury Norov
2026-08-19 23:54 ` Andrew Lunn
2026-08-20  0:10   ` Andrew Lunn
2026-08-21 16:57     ` Florian Bezdeka
2026-08-21 16:47   ` Florian Bezdeka
2026-08-20 15:12 ` Sebastian Andrzej Siewior
2026-08-21 17:09   ` Florian Bezdeka

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=11c2d3c4-ea05-46a2-8579-c5aba1bfa204@siemens.com \
    --to=jan.kiszka@siemens.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexandre.torgue@foss.st.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=bigeasy@linutronix.de \
    --cc=clrkwllms@kernel.org \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=florian.bezdeka@siemens.com \
    --cc=kuba@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rt-devel@lists.linux.dev \
    --cc=linux-stm32@st-md-mailman.stormreply.com \
    --cc=linux@rasmusvillemoes.dk \
    --cc=maxime.chevallier@bootlin.com \
    --cc=mcoquelin.stm32@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=rostedt@goodmis.org \
    --cc=tglx@kernel.org \
    --cc=yury.norov@gmail.com \
    /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