Hi Christian, On Tue, 31 Mar 2020, 14:16 Daniel Vetter, wrote: > On Mon, Mar 30, 2020 at 03:55:31PM +0200, Christian König wrote: > > Add a peer2peer flag noting that the importer can deal with device > > resources which are not backed by pages. > > > > Signed-off-by: Christian König > > On the series: > > Acked-by: Daniel Vetter > Fwiw, for the series, Acked-by: Sumit Semwal > --- > > drivers/dma-buf/dma-buf.c | 2 ++ > > include/linux/dma-buf.h | 10 ++++++++++ > > 2 files changed, 12 insertions(+) > > > > diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c > > index ccc9eda1bc28..570c923023e6 100644 > > --- a/drivers/dma-buf/dma-buf.c > > +++ b/drivers/dma-buf/dma-buf.c > > @@ -690,6 +690,8 @@ dma_buf_dynamic_attach(struct dma_buf *dmabuf, > struct device *dev, > > > > attach->dev = dev; > > attach->dmabuf = dmabuf; > > + if (importer_ops) > > + attach->peer2peer = importer_ops->allow_peer2peer; > > attach->importer_ops = importer_ops; > > attach->importer_priv = importer_priv; > > > > diff --git a/include/linux/dma-buf.h b/include/linux/dma-buf.h > > index 1ade486fc2bb..82e0a4a64601 100644 > > --- a/include/linux/dma-buf.h > > +++ b/include/linux/dma-buf.h > > @@ -334,6 +334,14 @@ struct dma_buf { > > * Attachment operations implemented by the importer. > > */ > > struct dma_buf_attach_ops { > > + /** > > + * @allow_peer2peer: > > + * > > + * If this is set to true the importer must be able to handle peer > > + * resources without struct pages. > > + */ > > + bool allow_peer2peer; > > + > > /** > > * @move_notify > > * > > @@ -362,6 +370,7 @@ struct dma_buf_attach_ops { > > * @node: list of dma_buf_attachment, protected by dma_resv lock of the > dmabuf. > > * @sgt: cached mapping. > > * @dir: direction of cached mapping. > > + * @peer2peer: true if the importer can handle peer resources without > pages. > > * @priv: exporter specific attachment data. > > * @importer_ops: importer operations for this attachment, if provided > > * dma_buf_map/unmap_attachment() must be called with the dma_resv lock > held. > > @@ -382,6 +391,7 @@ struct dma_buf_attachment { > > struct list_head node; > > struct sg_table *sgt; > > enum dma_data_direction dir; > > + bool peer2peer; > > const struct dma_buf_attach_ops *importer_ops; > > void *importer_priv; > > void *priv; > > -- > > 2.17.1 > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel >