On 23.04.22 19:42, Christoph Hellwig wrote:

Hello Christoph

On Fri, Apr 22, 2022 at 07:51:03PM +0300, Oleksandr Tyshchenko wrote:
  static inline void xen_setup_dma_ops(struct device *dev)
  {
  #ifdef CONFIG_XEN
-       if (xen_swiotlb_detect())
+       if (arch_has_restricted_virtio_memory_access() &&
+                       xen_is_grant_dma_device(dev))
+               xen_grant_setup_dma_ops(dev);
+       else if (xen_swiotlb_detect())
I don't think that arch_has_restricted_virtio_memory_access
check should be there as it still is a bit of a layering violation.

Well, I will remove it then (and update commit description).

For virtualized but non-virtio devices, it is not needed at all. For the virtio devices, this check is already present at virtio.c:virtio_features_ok()




--
Regards,

Oleksandr Tyshchenko


Reply via email to