Re: [PATCH 2/2] nvme-pci: allow unmanaged interrupts

From: Benjamin Meier
Date: Mon May 13 2024 - 08:33:23 EST


> 'isolcpus=managed_irq' enablement patches are small, and shouldn't be very
> hard to backport.

I have big respect of kernel code and probably for non-kernel devs it's not so easy:)

But yeah, we'll look into this.

> > > > be tricky to assign all interrupts to those without a
> > performance-penalty.
> > > >
> > > > Given these requirements, manually specifying interrupt/core assignments
> > > > would offer greater flexibility and control over system performance.
> > > > Moreover, the proposed code changes appear minimal and have no
> > > > impact on existing functionalities.
> > >
> > > Looks your main concern is performance, but as Keith mentioned, the
> > proposed
> > > change may degrade nvme perf too:
> > >
> > > https://lore.kernel.org/linux-nvme/Zj6745UDnwX1BteO@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
> >
> > Yes, but for NVMe it's not that critical. The most important point for us is
> > to keep them away from our "high-priority" cores. We still wanted to have
> > control
> > where we run those interrupts, but also because we just did not know the
> > "managed_irq"
> > option.
>
> OK, thanks for share the input!
>
> Now from upstream viewpoint, 'isolcpus=managed_irq' should work for your case,
> and seems not necessary to support nvme unmanaged irq for this requirement
> at least.

Yes, probably that will do it. Personally, I still think it's a nice thing if it's
possible to assign interrupts to specific cores, but practically the advantages are
likely not that big compared to 'isolcpus=managed_irq'.

Thanks for all the explanations