[ofa-general] Re: [PATCH 1 of 2] IB/mlx4: For 64-bit systems, use large virtually contiguous queue buffers (vmap)

Roland Dreier rdreier at cisco.com
Fri Feb 1 12:33:39 PST 2008


 > --- infiniband.orig/drivers/infiniband/hw/mlx4/qp.c	2008-01-27 10:44:25.000000000 +0200
 > +++ infiniband/drivers/infiniband/hw/mlx4/qp.c	2008-01-27 10:52:21.000000000 +0200
 > @@ -96,7 +96,7 @@ static int is_qp0(struct mlx4_ib_dev *de
 >  
 >  static void *get_wqe(struct mlx4_ib_qp *qp, int offset)
 >  {
 > -	if (qp->buf.nbufs == 1)
 > +	if (BITS_PER_LONG == 64 || qp->buf.nbufs == 1)
 >  		return qp->buf.u.direct.buf + offset;
 >  	else
 >  		return qp->buf.u.page_list[offset >> PAGE_SHIFT].buf +

I don't see any changes to cq.c -- it seems we would want to make the
same optimization there, right?  Or is it actually better to walk the
two-level stuff ourselves when we can?

 - R.



More information about the general mailing list