On 19/04/17 02:48 PM, Jason Gunthorpe wrote: > On Wed, Apr 19, 2017 at 01:41:49PM -0600, Logan Gunthorpe wrote: > >>> But.. it could point to a GPU and the GPU struct device could have a >>> proxy dma_ops like Dan pointed out. >> >> Seems a bit awkward to me that in order for the intended use case, you >> have to proxy the dma_ops. I'd probably still suggest throwing a couple >> ops for things like this in the dev_pagemap. > > Another option is adding a new 'struct completer_dma_ops *' to struct > device for this use case. > > Seems like a waste to expand dev_pagemap when we only need a unique > value per struct device? I feel like expanding dev_pagemap has a much lower impact than expanding struct device... dev_pagemap is only one instance per zone device region so expanding it shouldn't be a huge issue. Expanding struct device means every device struct in the system gets bigger. Logan