Re: [RFC] IB/srp: Remove create_workqueue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux