On 06/06/2018 05:06 AM, Oleksandr Andrushchenko wrote: > On 06/04/2018 11:49 PM, Boris Ostrovsky wrote: >> On 06/01/2018 07:41 AM, Oleksandr Andrushchenko wrote: >> +struct gntdev_dmabuf_export_args { >> + int dummy; >> +}; >> >> Please define the full structure (at least what you have in the next >> patch) here. > Ok, will define what I have in the next patch, but won't > initialize anything until the next patch. Will this work for you? Sure, I just didn't see the need for the dummy argument that you remove later. >> >>> diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c >>> index 9813fc440c70..7d58dfb3e5e8 100644 >>> --- a/drivers/xen/gntdev.c >>> +++ b/drivers/xen/gntdev.c >> ... >> >>> +#ifdef CONFIG_XEN_GNTDEV_DMABUF >> This code belongs in gntdev-dmabuf.c. > The reason I have this code here is that it is heavily > tied to gntdev's internal functionality, e.g. map/unmap. > I do not want to extend gntdev's API, so gntdev-dmabuf can > access these. What is more dma-buf doesn't need to know about > maps done by gntdev as there is no use of that information > in gntdev-dmabuf. So, it seems more naturally to have > dma-buf's related map/unmap code where it is: in gntdev. Sorry, I don't follow. Why would this require extending the API? It's just moving routines to a different file that is linked to the same module. Since this is under CONFIG_XEN_GNTDEV_DMABUF then why shouldn't it be in gntdev-dmabuf.c? In my view that's the file where all dma-related "stuff" lives. -boris -boris