Messages in this thread | | | Subject | Re: [PATCH 0/3] MSI: Track device proxying when allocating MSIs | From | John Garry <> | Date | Mon, 30 Nov 2020 13:14:26 +0000 |
| |
On 29/11/2020 13:52, Marc Zyngier wrote: > This series aims to plug a gap found with John's "managed interrupts > for platform devices" series. > > We have a couple of cases where we allocate MSIs for a device, but the > endpoint generating the actual interrupts (let's call it the "logical > device") isn't the one being seen generating the MSIs (the "effective > device"): > > - PCI devices behind a non transparent bridge > - Devices attached to a wire-to-MSI bridge > > For interrupt infrastructures such as the ITS (where the effective > device ID is part of the translation), it is important decouple the > lifetime of the effective device mapping from the interrupt allocation > on behalf of the logical device. Yes, I have a headache too. > > To achieve this split, let's tag the such allocations with a new flag > that convey the fact that the effective device isn't the logical > one. This mostly affects the platform-MSI subsystem. > > Subsequent patches add handling of this new flag in the GICv3 ITS > (though there may be scope for something more generic in the case of > the last patch).
Hi Marc,
Tested-by: John Garry <john.garry@huawei.com>
Thanks!
> > Marc Zyngier (3): > platform-msi: Track shared domain allocation > irqchip/gic-v3-its: Tag ITS device as shared if allocating for a proxy > device > irqchip/gic-v3-its: Flag device allocation as proxied if behind a PCI > bridge > > drivers/base/platform-msi.c | 7 +++++++ > drivers/irqchip/irq-gic-v3-its-pci-msi.c | 11 ++++++++--- > drivers/irqchip/irq-gic-v3-its.c | 3 +++ > include/asm-generic/msi.h | 4 ++++ > 4 files changed, 22 insertions(+), 3 deletions(-) >
| |