[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dcee0161-3210-0cfb-c0e6-bba7259ad639@sandisk.com>
Date: Tue, 7 Jun 2016 13:00:13 -0700
From: Bart Van Assche <bart.vanassche@...disk.com>
To: Tejun Heo <tj@...nel.org>
CC: Bhaktipriya Shridhar <bhaktipriya96@...il.com>,
Doug Ledford <dledford@...hat.com>,
Sean Hefty <sean.hefty@...el.com>,
Hal Rosenstock <hal.rosenstock@...il.com>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [RFC] IB/srp: Remove create_workqueue
On 06/07/2016 12:56 PM, Bart Van Assche wrote:
> On 06/07/2016 12:21 PM, Tejun Heo wrote:
>> On Tue, Jun 07, 2016 at 11:32:42AM -0700, Bart Van Assche wrote:
>>> On 06/07/2016 11:16 AM, Bhaktipriya Shridhar wrote:
>>>> alloc_workqueue replaces deprecated create_workqueue().
>>>>
>>>> A dedicated workqueue has been used since the workqueue srp_remove_wq with
>>>> workitem &target->remove_work, is a work queue for the SRP target removal.
>>>> WQ_MEM_RECLAIM has been set to ensure forward progress under memory
>>>> pressure.
>>>> Since there are only a fixed number of work items, explicit
>>>> concurrency limit is unnecessary here.
>>>>
>>>> Is the workqueue being used on a memory reclaim path?
>>>> Does it require WQ_MEM_RECLAIM?
>>>
>>> Hello Bhaktipriya,
>>>
>>> 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.
Bart.
Powered by blists - more mailing lists