Re: Kernel fast memory registration API proposal [RFC]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 7/16/2015 11:07 AM, Christoph Hellwig wrote:
On Thu, Jul 16, 2015 at 09:52:44AM +0300, Sagi Grimberg wrote:
I suggest to start with what I proposed. And in a later stage (if we
still think its needed) we can have a higher level API that hides the
post, something like:

rdma_reg_sg(struct ib_qp *qp,
            struct ib_mr *mr,
            struct scatterlist *sg,
            int sg_nents,
            u64 offset,
            u64 length,
            int access_flags)

I still wonder what ?length? means in the context of a scatterlist.

Would byte_count be a more explanatory name?

What do you even need it for?  The total length is implicitly stored in
the S/G list as the list of all elements.

What's the offset for?  To allow skipping parts of a S/G list previously
mapped?


These were added when I thought of the pages helper. The memory region
HW tables consist of physical addresses, a first byte offset, and a
byte length to indicate when the region ends in the last page.

However, if we have only sg lists, I agree that the length is derived
from the sg_list itself and the offset will be sg[0]->offset.

I can drop it, unless anyone can think of a use-case where a ULP would
want to register a region with a different offset from sg[0]->offset
and/or ends before the sum(sg->length).
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux