On 07/08/2015 08:03 PM, Jason Gunthorpe wrote: > On Wed, Jul 08, 2015 at 01:32:05PM -0700, 'Christoph Hellwig' wrote: >> On Wed, Jul 08, 2015 at 01:08:42PM -0600, Jason Gunthorpe wrote: >>> Then, what is left is all remote MRs and maybe it will be clearer what >>> to do about them then... >> >> From looking at that for a while the APIs needed seem pretty simple >> to me from a consumer perspective: >> >> struct rdma_mr *rmda_alloc_mr(struct ib_pd *pd, unsigned int nr_pages); >> void rdma_free_mr(struct rdma_mr *mr); > > The major trouble with that is that the new MR types work by posting > work to the send queue, that work creates the MR. > > I don't know all the details of how those schemes work, but it doesn't > look like it fits into this model ? > > Maybe if rdma_register_sg was the only API and it accepted a QP, under > the hood it could re-use a pooled/create a non-queued (F)MR, or issue > FRMR, or work with indirect? > > It would be nice if it is that simple :) > > Sagi, are FMRs, FRMRs and Indirect MRs documented any place? I can't > recall off hand if FRMR was ever published by the IBTA? A lot of this discussion is interesting and has gone off in an area that I think is worth pursuing in the long run. However, in the short run, this patch was a minor cleanup/simplification patch. These discussions are moving into complete redesigns and rearchitecting. Steve, I'm OK with the cleanup and would prefer that it stay separate from these larger issues. Baby steps, one things at a time. -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: 0E572FDD
Attachment:
signature.asc
Description: OpenPGP digital signature