Re: Enabling peer to peer device transactions for PCIe devices

From: Logan Gunthorpe
Date: Mon Dec 05 2016 - 14:27:38 EST




On 05/12/16 12:14 PM, Jason Gunthorpe wrote:
But CMB sounds much more like the GPU case where there is a
specialized allocator handing out the BAR to consumers, so I'm not
sure a general purpose chardev makes a lot of sense?

I don't think it will ever need to be as complicated as the GPU case. There will probably only ever be a relatively small amount of memory behind the CMB and really the only users are those doing P2P work. Thus the specialized allocator could be pretty simple and I expect it would be fine to just return -ENOMEM if there is not enough memory.

Also, if it was implemented this way, if there was a need to make the allocator more complicated it could easily be added later as the userspace interface is just mmap to obtain a buffer.

Logan