On Wed, Sep 30, 2020 at 12:14:06PM -0300, Jason Gunthorpe wrote:
On Wed, Sep 30, 2020 at 06:05:15PM +0300, Maor Gottlieb wrote:
This is right only for the last iteration. E.g. in the first iteration in case that there are more pages (left_pages), then we allocate SG_MAX_SINGLE_ALLOC. We don't know how many pages from the second iteration will be squashed to the SGE from the first iteration.
Well, it is 0 or 1 SGE's. Check if the first page is mergable and subtract one from the required length?
I dislike this sg_mark_end() it is something that should be internal, IMHO.
I don't think so, but Maor provided possible solution. Can you take the patches?
Thanks
Jason