[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CY4PR21MB0773C3A2748B87E9125095F9D7C40@CY4PR21MB0773.namprd21.prod.outlook.com>
Date: Wed, 7 Nov 2018 18:41:57 +0000
From: Michael Kelley <mikelley@...rosoft.com>
To: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"mingo@...nel.org" <mingo@...nel.org>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"hpa@...or.com" <hpa@...or.com>,
Michael Kelley <mikelley@...rosoft.com>,
Long Li <longli@...rosoft.com>
Subject: RE: [tip:irq/core] genirq/matrix: Improve target CPU selection for
managed interrupts.
From: tip tree robot <tipbot@...or.com> Sent: Tuesday, November 6, 2018 2:28 PM
>
> Committer: Thomas Gleixner <tglx@...utronix.de>
> CommitDate: Tue, 6 Nov 2018 23:20:13 +0100
>
> 2) Managed interrupts:
>
> Managed interrupts guarantee vector reservation when the MSI/MSI-X
> functionality of a device is enabled, which is achieved by reserving
> vectors in the bitmaps of the possible target CPUs. This reservation
> decrements the available count on each possible target CPU.
>
Thomas,
For the curious, could you elaborate on the reservation guarantee for
managed interrupts? What exactly is guaranteed? I'm trying to
understand the benefit of reserving a vector on all possible target CPUs.
I can imagine this may be to related hot-remove of CPUs, but I'm not
seeing the scenario where reserving on all possible target CPUs solves
any fundamental problem. irq_build_affinity_masks() assigns spreads
target CPUs across each IRQ in the batch, so you might get a small handful
of possible target CPUs for each IRQ. But if those small handful of CPUs
were to be hot-removed, then all the reserved vectors disappear anyway.
So maybe there's another scenario I'm missing.
Thanks,
Michael
Powered by blists - more mailing lists