On Mon, Feb 24, 2025 at 07:35:05PM -0400, Jason Gunthorpe wrote: > On Mon, Feb 24, 2025 at 01:56:46PM -0800, Nicolin Chen wrote: > > > > Just thinking out loud here: > > > I understand the goal here is to "emulate" an IOMMU. But I'm just > > > wondering if we could report struct events instead of the raw event? > > > > > > For example, can't we have something like arm_smmu_event here with the > > > sid changed to vsid? > > > > > > Are we taking the raw event since we want to keep the `u64 event_data[]` > > > field within `struct iommufd_vevent` generic to all architectures? > > > > The ABIs for vSMMU are defined in the HW languange, e.g. cmd, ste. > > Thus, here evt in raw too. > > Right, the point is that it gives as a safe uABI that is effectively > being managed by ARM. > > If we make our own thing then we have to take the responsiblity to > make it safe and extensible. I don't see a justification to do that.. > > It is the same discussion we had around the vSTE as input, the raw > invalidation command and the IDRs. Since we've already done 'follow > the SMMU spec' so many times already now we should keep doing it. Ack. Undertsood. Thanks for the explanation :) -Praan