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

From
Ram Pai <hidden>
Date
2018-05-24 07:21:22
Also in
lkml
Reply to
Michael S. Tsirkin, 2018-05-23
On Wed, May 23, 2018 at 09:50:02PM +0300, Michael S. Tsirkin wrote:
subj: s/virito/virtio/
..snip..
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.

However this code was added to the RFC to illustrate the idea that dma
operation are needed only in a secure/protected environment.

RP
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