Re: [PATCH RFC 1/4] RDMA/umem: Minimize SG table entries

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

 



On Thu, Oct 25, 2018 at 08:27:17PM -0600, Jason Gunthorpe wrote:
> On Tue, Oct 23, 2018 at 06:55:45PM -0500, Shiraz Saleem wrote:
> > On Mon, Oct 22, 2018 at 03:06:42PM -0600, Jason Gunthorpe wrote:
> > > On Fri, Oct 19, 2018 at 06:34:06PM -0500, Shiraz Saleem wrote:
> > > > Squash contiguous regions of PAGE_SIZE pages
> > > > into a single SG entry as opposed to one
> > > > SG entry per page. This reduces the SG table
> > > > size and is friendliest to the IOMMU.
> > > > 
> > > > Suggested-by: Jason Gunthorpe <jgg@xxxxxxxx>
> > > > Reviewed-by: Michael J. Ruhl <michael.j.ruhl@xxxxxxxxx>
> > > > Signed-off-by: Shiraz Saleem <shiraz.saleem@xxxxxxxxx>
> > > >  drivers/infiniband/core/umem.c | 66 ++++++++++++++++++++----------------------
> > > >  1 file changed, 31 insertions(+), 35 deletions(-)

[..]

> > Since sg_alloc_table_from_pages cant be really used here as page_list size has
> > to be restricted, I would prefer we defer solving the problem of over allocating
> > of SG table to a follow on series.
> > And do combining of contig regions into SGL entries in this one.
> 
> Sure, I don't mind the overallocation, it is already the way things
> are today.
> 
> Maybe we trivially add an API to trim the sg_table?

I will explore this and try adding to this series.
 
> > > If the umem core starts producing large SGL entries won't all the
> > > drivers break?
> > 
> > Hmmm..why?
> 
> I'm concerned something iterates over the SGL without using the 'for
> each page' varient of the iterator.. It is worth doing some survey at
> least.

OK. That sounds reasonable.



[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