On Wed, Mar 18, 2020 at 09:52:27AM +0200, Yishai Hadas wrote: > We can really consider extending the functionality of a parent domain that > was just added for CQ in case it holds a thread domain for this purpose. > However, current code enforces creating a dedicated BF as part of thread > domain unless we extend ibv_alloc_td() to ask only for marking the single > thread functionality. Doesn't the CQ need a BF too? In any event, I don't think it matters, any real application is likely to use the thread domain with a QP as well so the BF will not be wasted > The existing alternative is or to use the legacy ENV that mentioned above or > to use the ibv_cq_ex functionality which upon its creation gets an explicit > flag for single threaded one (i.e. IBV_CREATE_CQ_ATTR_SINGLE_THREADED). An apps that don't want the BF can always use IBV_CREATE_CQ_ATTR_SINGLE_THREADED I think consistency says that if a thread domain is passed into CQ it should trigger IBV_CREATE_CQ_ATTR_SINGLE_THREADED Jason