Re: [PATCH rdma-next v4 4/4] RDMA/umem: Move to allocate SG table from pages

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

 




On 9/30/2020 6:14 PM, 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 can move it to __sg_alloc_table_from_pages:

        sgt->nents = tmp_nents;
+ if (!left_pages)
+         sg_mark_end(s);
 out:
        return s;


Jason




[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