On Mon, Nov 23, 2015 at 01:04:25PM -0800, Bart Van Assche wrote:
Considerable time ago the send queue in the SRP initiator driver was
modified from signaled to non-signaled to reduce the number of interrupts
triggered by the SRP initiator driver. The SRP initiator driver polls the
send queue every time before a SCSI command is sent to the target. I think
this is a pattern that is also useful for other ULP's so I'm not convinced
that ib_process_cq_direct() should be deprecated :-)
As I explained, that is a fine idea, but I can't see how SRP is able
to correctly do sendq flow control without spinning on the poll, which
it does not do.
I'm guessing SRP is trying to drive sendq flow control from the recv
side, like NFS was. This is wrong and should not be part of the common
API.
Does that make sense?