mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH RFC net-next 0/3] dpaa2: avoid scheduling dpio interrupts on isolated CPUs
@ 2026-09-30 16:54 Josua Mayer
  2026-09-30 16:54 ` [PATCH RFC net-next 1/3] dpaa2-eth: skip isolated CPUs when allocating channels Josua Mayer
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Josua Mayer @ 2026-09-30 16:54 UTC (permalink / raw)
  To: Ioana Ciornei, Christophe Leroy (CS GROUP),
	Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Horia Geantă,
	Pankaj Gupta, Gaurav Jain, Herbert Xu
  Cc: Yazan Shhady, Jon Nettleton, linux-kernel, linuxppc-dev,
	linux-arm-kernel, netdev, linux-crypto, Josua Mayer

Sent as RFC due to very superficial testing, and confusion wrt. which
list/tree to target. Suggest net-next. Last patch is logical first, but
must be applied last.

Each DPAA2 software portal (DPIO) is bound to one CPU. The dpaa2-eth and
caam qi2 drivers allocate channels and queues for each online CPU.
Notifications, and NAPI polling are processed on each DPIO's affine CPU.
This balances I/O load nicely across all available CPU cores while
keeping data on the hot path.

When isolcpus=managed_irq is used to reserve CPUs for latency-sensitive
applications, those CPUs are expected to be free of routine device
interrupts. However, DPIO interrupts currently continue to arrive on
isolated CPUs, interrupting any application running there.

This series assigns DPIOs only to CPUs in the HK_TYPE_MANAGED_IRQ
housekeeping mask, and changes dpaa2-eth and caam qi2 to set up their
per-CPU channels and queue pairs only on those CPUs. Without the driver
changes, both would defer probe indefinitely, waiting for a DPIO on an
isolated CPU.

Isolated CPUs can still transmit frames and enqueue crypto requests;
the resulting ingress, Tx confirmation and response processing runs on
housekeeping CPUs. Systems without isolcpus=managed_irq are unaffected.

Note: This series is submitted in reverse, to ease bisecting.
Otherwise caam/dpaa2-eth would defer probe iondefinitely when booted
with one or more isolated CPUs.

Signed-off-by: Josua Mayer <josua@solid-run.com>
---
Josua Mayer (3):
      dpaa2-eth: skip isolated CPUs when allocating channels
      crypto: caam/qi2 - skip isolated CPUs when setting up queue pairs
      soc: fsl: dpio: skip isolated CPUs when assigning portals

 drivers/crypto/caam/caamalg_qi2.c                | 26 +++++++++++++++---------
 drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 10 +++++++--
 drivers/soc/fsl/dpio/dpio-driver.c               |  7 +++++--
 3 files changed, 29 insertions(+), 14 deletions(-)
---
base-commit: 47a1446725732cd3996edf607e8739334bbf4d78
change-id: 20260930-dpaa2-isolcpus-ecb715f2004d

Best regards,
-- 
Josua Mayer <josua@solid-run.com>


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-09-30 16:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-30 16:54 [PATCH RFC net-next 0/3] dpaa2: avoid scheduling dpio interrupts on isolated CPUs Josua Mayer
2026-09-30 16:54 ` [PATCH RFC net-next 1/3] dpaa2-eth: skip isolated CPUs when allocating channels Josua Mayer
2026-09-30 16:54 ` [PATCH RFC net-next 2/3] crypto: caam/qi2 - skip isolated CPUs when setting up queue pairs Josua Mayer
2026-09-30 16:55 ` [PATCH RFC net-next 3/3] soc: fsl: dpio: skip isolated CPUs when assigning portals Josua Mayer

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®