> -----Original Message----- > From: linux-rdma-owner@xxxxxxxxxxxxxxx [mailto:linux-rdma-owner@xxxxxxxxxxxxxxx] On Behalf Of Sagi Grimberg > Sent: Monday, November 16, 2015 12:38 PM > To: Steve Wise; 'Christoph Hellwig'; linux-rdma@xxxxxxxxxxxxxxx > Cc: bart.vanassche@xxxxxxxxxxx; axboe@xxxxxx; linux-scsi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx > Subject: Re: [PATCH 3/9] IB: add a helper to safely drain a QP > > > > After looking at the nes driver, I don't see any common way to support drain w/o some serious driver mods. Since SRP is the only > > user, perhaps we can ignore iWARP for this function... > > But iser/isert essentially does it too (and I think xprtrdma will have > it soon)... > > the modify_qp is invoked from rdma_disconnect() and we do post > an 'empty' wr to wait for all the flushes to drain (see > iser_conn_terminate). That won't work for iWARP. Is this code new? I didn't see any errors that would result from this code when I tested iSER over cxgb4 with the old iwarp support patches. Perhaps we need another way to do this? Like a completion object in the QP that gets triggered when the SQ and RQ become empty after a transition to ERROR (and CLOSING for iwarp). Then a core service that just waits until the QP is empty. Implementation of this design would hit the providers though since only they know when the flush is completed. Alternatively, I could enable post-while-in-error support in cxgb4 and ignore the spec in this regard. But I'd rather not do that. :) Steve. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html