RE: [RDMA PATCH 16/16] i40iw: Adding queue drain functions

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

 



> On Thu, Apr 07, 2016 at 05:46:38PM -0700, Leon Romanovsky wrote:
> > On Thu, Apr 07, 2016 at 11:31:04AM -0500, Mustafa Ismail wrote:
> > > Adding sq and rq drain functions, which block until all
> > > previously posted wr-s in the specified queue have completed.
> > > A completion object is signaled to unblock the thread,
> > > when the last cqe for the corresponding queue is processed.
> > >
> > > Signed-off-by: Mustafa Ismail <mustafa.ismail@xxxxxxxxx>
> > > Signed-off-by: Faisal Latif <faisal.latif@xxxxxxxxx>
> >
> > I want to bring back last conversation about need special function to
> > drain QPs for iWARP devices.
> > Come on guys, it is already third place there is the same implementation
> > is introduced in last 2 months.
> 
> In order to move this into core, the core would need to determine if the
> sq and rq are empty. To do this it will need the driver's internal sq and
> rq information such as head and tail. Then if not empty it will need
> more information about the qp's cq processing. All this is device specific.
> 
> It is just a few lines of code in each driver to check if its hw sq and rq
> are empty and if not, handle it from its cq processing.
> 
> For this reason, it seems best left to each iWARP driver to handle.
> 
> Thanks,

I agree.  My cxgb4 drain functions need to check if the sq/rq are empty as well.
And for cxgb4, that will require holding the qp spinlock.  (I need to post this
patch soon).

So while they are all very similar, the guts for looking at the sq/rq are
device-specific.

Steve.
 

--
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