Messages in this thread | | | Date | Mon, 30 Jul 2018 02:25:51 -0700 | From | Christoph Hellwig <> | Subject | Re: [RFC 2/4] virtio: Override device's DMA OPS with virtio_direct_dma_ops selectively |
| |
> +const struct dma_map_ops virtio_direct_dma_ops;
This belongs into a header if it is non-static. If you only use it in this file anyway please mark it static and avoid a forward declaration.
> + > int virtio_finalize_features(struct virtio_device *dev) > { > int ret = dev->config->finalize_features(dev); > @@ -174,6 +176,9 @@ int virtio_finalize_features(struct virtio_device *dev) > if (ret) > return ret; > > + if (virtio_has_iommu_quirk(dev)) > + set_dma_ops(dev->dev.parent, &virtio_direct_dma_ops);
This needs a big fat comment explaining what is going on here.
Also not new, but I find the existance of virtio_has_iommu_quirk and its name horribly confusing. It might be better to open code it here once only a single caller is left.
| |