On Fri, Oct 11, 2019 at 06:25:19PM -0700, Ram Pai wrote:
> From: Thiago Jung Bauermann <[email protected]>
> 
> Normally, virtio enables DMA API with VIRTIO_F_IOMMU_PLATFORM, which must
> be set by both device and guest driver. However, as a hack, when DMA API
> returns physical addresses, guest driver can use the DMA API; even though
> device does not set VIRTIO_F_IOMMU_PLATFORM and just uses physical
> addresses.
> 
> Doing this works-around POWER secure guests for which only the bounce
> buffer is accessible to the device, but which don't set
> VIRTIO_F_IOMMU_PLATFORM due to a set of hypervisor and architectural bugs.
> To guard against platform changes, breaking any of these assumptions down
> the road, we check at probe time and fail if that's not the case.
> 
> cc: Benjamin Herrenschmidt <[email protected]>
> cc: David Gibson <[email protected]>
> cc: Michael Ellerman <[email protected]>
> cc: Paul Mackerras <[email protected]>
> cc: Michael Roth <[email protected]>
> cc: Alexey Kardashevskiy <[email protected]>
> cc: Jason Wang <[email protected]>
> cc: Christoph Hellwig <[email protected]>
> Suggested-by: Michael S. Tsirkin <[email protected]>
> Signed-off-by: Ram Pai <[email protected]>
> Signed-off-by: Thiago Jung Bauermann <[email protected]>

Reviewed-by: David Gibson <[email protected]>

I don't know that this is the most elegant solution possible.  But
it's simple, gets the job done and pretty unlikely to cause mysterious
breakage down the road.

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature

Reply via email to