Re: [PATCH 2/9] IB: add a proper completion queue abstraction

Christoph Hellwig
2015-11-15T12:55:05Z

On Sun, Nov 15, 2015 at 11:40:02AM +0200, Sagi Grimberg wrote:
> I doubt INT_MAX is useful as a budget in any use-case. it can easily
> hog the CPU. If the consumer is given access to poll a CQ, it must be
> able to provide some way to budget it. Why not expose a budget argument
> to the consumer?

Because in theory we could have a lot of sends completing before
we finally need to reap them. I think that's more of a theoretical
than real issue.

My preference would be to simply kill this mode though. Allocate a IU
to each block request in SRP and only use the free_tx list for task
management and AEN/req_limit calls. Then we can use a single CQ
and mark the regular I/O requests as unsignalled.

AFAICS no other driver wants a similar polling mode as the SRP initiator
does for it's send queue.