Thread (84 messages) 84 messages, 11 authors, 2022-11-17

Re: [RFC PATCH v3 4/7] bus/cdx: add cdx-MSI domain with gic-its domain as parent

From: Jason Gunthorpe <jgg@ziepe.ca>
Date: 2022-10-13 12:43:40
Also in: kvm, linux-devicetree, linux-kbuild, lkml

On Wed, Oct 12, 2022 at 03:09:26PM +0000, Radovanovic, Aleksandar wrote:
quoted
On Wed, Oct 12, 2022 at 01:37:54PM +0000, Radovanovic, Aleksandar wrote:
quoted
quoted
On Wed, Oct 12, 2022 at 10:34:23AM +0000, Radovanovic, Aleksandar
wrote:
quoted
quoted
quoted
As for GITS_TRANSLATER, we can take up to 4 different IOVAs, which
limits us to 4 CDX devices (should be sufficient for current HW
use-cases). Also, it means that the address part must be the same
for all vectors within a single CDX device. I'm assuming this is
OK as it is going to be a single interrupt and IOMMU domain anyway.
This is not at all how MSI is supposed to work.
In the general case, no, they're not.
I don't mean that you can hack this to work - I mean that in MSI the
addr/data is supposed to come from the end point itself, not from some kind
of shared structure. This is important because the actual act of generating
the write has to be coherent with the DMA the device is doing, as the MSI
write must push any DMA data to visibility to meet the "producer /
consumer" model.
I'm not sure I follow your argument, the limitation here is that the MSI
address value is shared between vectors of the same device (requester id
or endpoint, whichever way you prefer to call it), not between
devices.
That isn't what you said, you said "we can take up to 4 different
IOVAs, which limits us to 4 CDX devices" - which sounds like HW being
shared across devices??

Jason

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help