The only reason why I added this array on-stack was to allow consumers
that did not use ib_alloc_cq api to call it, but that seems like a
wrong decision when thinking it over again (as probably these users
did not set the wr_cqe correctly).

How about we make ib_process_cq_direct use the cq wc array and add
a WARN_ON statement (and fail it gracefully) if the caller used this
API without calling ib_alloc_cq?

but we tried to avoid cuncurrent access to cq->wc.

Not sure its a valid use-case. But if there is a compelling
reason to keep it as is, then we can do smaller on-stack
array.

Reply via email to