On Tue, Feb 19, 2019 at 06:32:50PM +0100, Håkon Bugge wrote: > Anyway, Jason mentioned in a private email that maybe we could use the > new completion API or something? I am not familiar with that one > (yet). I was thinking of the stuff in core/cq.c - but it also doesn't have automatic comp_vector balancing. It is the logical place to put something like that though.. An API to manage a bundle of CPU affine CQ's is probably what most ULPs really need.. (it makes little sense to create a unique CQ for every QP) alloc_bundle() get_cqn_for_flow(bundle) alloc_qp() destroy_qp() put_cqn_for_flow(bundle) destroy_bundle(); Let the core code balance the cqn's and allocate (shared) CQ resources. Jason