RE: Flush warning

Steve Wise
2017-08-14T17:21:40Z

> > >>> The workqueue which frees the memory and doesn't allocate memory
> > >>> during execution is supposed to be marked as WQ_MEM_RECLAIM. This
> > >>> flag will cause to priority increase for such workqueue during low
> > memory conditions.
> > >>
> > >> Which to my understanding means that CM workqueue should not use it
> > >> as on each CM connect, by definition the ULP allocates memory (qp,
> > cq etc).
> > >
> > > From my understanding too.
> > > That workqueue was introduced in 2005, in a977049dacde ("[PATCH] IB:
> > > Add the kernel CM implementation"), it is not clear if it was
> > > intentionally.
> > >
> > > Hal,
> > > do you remember the rationale there?
> >
> > Sean is best to respond to this.
>
> I believe the work queue was to avoid potential deadlocks that could arise
from
> using the MAD work queue. The original submission did not mark the work queue
> with WQ_MEM_RECLAIM. I do not know when that change was added.

By the way, the queue I'm actually having the problem with is in the iwcm, not
the ibcm. I think we should remove WQ_MEM_RECLAIM from all the CM queues
because I agree now that ulps potentially can/will allocate memory in the
contect of these workqueues...