lkml.org 
[lkml]   [2016]   [Jun]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC] IB/srp: Remove create_workqueue
Hello, Bart.

On Tue, Jun 07, 2016 at 01:00:13PM -0700, Bart Van Assche wrote:
> > > > srp_remove_wq is used for SRP target port removal work only. This work is
> > > > neither queued from inside a shrinker nor by the page writeback code so I
> > > > think it is safe to drop WQ_MEM_RECLAIM.
> > >
> > > It should be able to use system_wq then.
> >
> > No. I have tried that but that resulted in a deadlock.
>
> See also commit bcc059103591 for the details.

So, create_workqueue() limits concurrency to 1 per cpu and if you have
a dependency between two work items and they get scheduled on the same
cpu they can deadlock. system_wq doesn't have that restriction and
should be fine, AFAICS.

Thanks!

--
tejun

\
 
 \ /
  Last update: 2016-06-20 21:41    [W:0.230 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site