[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241031074618.3585491-1-guanjun@linux.alibaba.com>
Date: Thu, 31 Oct 2024 15:46:16 +0800
From: 'Guanjun' <guanjun@...ux.alibaba.com>
To: corbet@....net,
axboe@...nel.dk,
mst@...hat.com,
jasowang@...hat.com,
xuanzhuo@...ux.alibaba.com,
eperezma@...hat.com,
vgoyal@...hat.com,
stefanha@...hat.com,
miklos@...redi.hu,
tglx@...utronix.de,
peterz@...radead.org,
akpm@...ux-foundation.org,
paulmck@...nel.org,
thuth@...hat.com,
rostedt@...dmis.org,
bp@...en8.de,
xiongwei.song@...driver.com,
linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org,
linux-block@...r.kernel.org,
virtualization@...ts.linux.dev,
linux-fsdevel@...r.kernel.org
Cc: guanjun@...ux.alibaba.com
Subject: [PATCH RFC v1 0/2] Support for limiting the number of managed interrupts on every node per allocation.
From: Guanjun <guanjun@...ux.alibaba.com>
We found that in scenarios with a large number of devices on the system,
for example, 256 NVMe block devices, each with 2 I/O queues, about a few
dozen of interrupts cannot be allocated, and get the error code -ENOSPC.
The reason for this issue is that the io queue interrupts are set to managed
interrupts (i.e., affinity is managed by the kernel), which leads to a
excessive number of the IRQ matrix bits being reserved.
This patch series support for limiting the number of managed interrupt
per allocation to address this issue.
Thanks,
Guanjun
Guanjun (2):
genirq/affinity: add support for limiting managed interrupts
genirq/cpuhotplug: Handle managed IRQs when the last CPU hotplug out
in the affinity
.../admin-guide/kernel-parameters.txt | 12 ++++
block/blk-mq-cpumap.c | 2 +-
drivers/virtio/virtio_vdpa.c | 2 +-
fs/fuse/virtio_fs.c | 2 +-
include/linux/group_cpus.h | 2 +-
include/linux/irq.h | 2 +
kernel/cpu.c | 2 +-
kernel/irq/affinity.c | 11 ++--
kernel/irq/cpuhotplug.c | 51 +++++++++++++++++
lib/group_cpus.c | 55 ++++++++++++++++++-
10 files changed, 130 insertions(+), 11 deletions(-)
--
2.43.5
Powered by blists - more mailing lists