From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1422872AbcFGSKY (ORCPT ); Tue, 7 Jun 2016 14:10:24 -0400 Received: from mail-pa0-f65.google.com ([209.85.220.65]:34762 "EHLO mail-pa0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1422841AbcFGSKQ (ORCPT ); Tue, 7 Jun 2016 14:10:16 -0400 Date: Tue, 7 Jun 2016 23:40:06 +0530 From: Bhaktipriya Shridhar To: Doug Ledford , Sean Hefty , Hal Rosenstock , Matan Barak , Haggai Eran , Erez Shitrit , Jason Gunthorpe , Or Gerlitz , Bart Van Assche Cc: Tejun Heo , linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC] IB/core: Remove create_workqueue Message-ID: <20160607181005.GA6233@Karyakshetra> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org alloc_workqueue replaces deprecated create_workqueue(). A dedicated workqueue has been used since cm.wq has workitem &cm_id_priv->timewait_info->work.work (maps to cm_work_handler) is involved in normal device operation. When a cm mad is received, it is queued to a cm workqueue for processing. The queued work item references the port and device on which the mad was received. 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? Thanks. Signed-off-by: Bhaktipriya Shridhar --- drivers/infiniband/core/cm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c index 1d92e09..e335d0b 100644 --- a/drivers/infiniband/core/cm.c +++ b/drivers/infiniband/core/cm.c @@ -4004,7 +4004,7 @@ static int __init ib_cm_init(void) goto error1; } - cm.wq = create_workqueue("ib_cm"); + cm.wq = alloc_workqueue("ib_cm", WQ_MEM_RECLAIM, 0); if (!cm.wq) { ret = -ENOMEM; goto error2; -- 2.1.4