Re: [RFC V2] virtio: Add platform specific DMA API translation for virito devices

From
Michael S. Tsirkin <mst@redhat.com>
Date
2018-05-31 17:44:02
Also in
lkml
Reply to
Anshuman Khandual, 2018-05-31
On Thu, May 31, 2018 at 09:09:24AM +0530, Anshuman Khandual wrote:
On 05/24/2018 12:51 PM, Ram Pai wrote:
quoted
On Wed, May 23, 2018 at 09:50:02PM +0300, Michael S. Tsirkin wrote:
quoted
subj: s/virito/virtio/
..snip..
quoted
quoted
 machine_subsys_initcall_sync(pseries, tce_iommu_bus_notifier_init);
+
+bool platform_forces_virtio_dma(struct virtio_device *vdev)
+{
+	/*
+	 * On protected guest platforms, force virtio core to use DMA
+	 * MAP API for all virtio devices. But there can also be some
+	 * exceptions for individual devices like virtio balloon.
+	 */
+	return (of_find_compatible_node(NULL, NULL, "ibm,ultravisor") != NULL);
+}
Isn't this kind of slow?  vring_use_dma_api is on
data path and supposed to be very fast.
Yes it is slow and not ideal. This won't be the final code. The final
code will cache the information in some global variable and used
in this function.
Right this will be a simple check based on a global variable.
Pls work on a long term solution. Short term needs can be served by
enabling the iommu platform in qemu.

-- 
MST
Thread (41 messages) 41 messages, 6 authors, last reply 2018-06-16
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help