All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] fusion: Remove deprecated create_singlethread_workqueue
@ 2016-08-30 19:02 ` Bhaktipriya Shridhar
  0 siblings, 0 replies; 12+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 19:02 UTC (permalink / raw)
  To: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl
  Cc: linux-scsi, linux-kernel, Tejun Heo

This patch set removes deprecated create_singlethread_workqueue
instances from drivers/message

Bhaktipriya Shridhar (2):
  fusion/mptfc: Remove deprecated create_singlethread_workqueue
  fusion: mptbase: Remove deprecated create_singlethread_workqueue

 drivers/message/fusion/mptbase.c | 7 ++++---
 drivers/message/fusion/mptfc.c   | 3 ++-
 2 files changed, 6 insertions(+), 4 deletions(-)

--
2.1.4

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 0/2] fusion: Remove deprecated create_singlethread_workqueue
@ 2016-08-30 19:02 ` Bhaktipriya Shridhar
  0 siblings, 0 replies; 12+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 19:02 UTC (permalink / raw)
  To: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl
  Cc: linux-scsi, linux-kernel, Tejun Heo

This patch set removes deprecated create_singlethread_workqueue
instances from drivers/message

Bhaktipriya Shridhar (2):
  fusion/mptfc: Remove deprecated create_singlethread_workqueue
  fusion: mptbase: Remove deprecated create_singlethread_workqueue

 drivers/message/fusion/mptbase.c | 7 ++++---
 drivers/message/fusion/mptfc.c   | 3 ++-
 2 files changed, 6 insertions(+), 4 deletions(-)

--
2.1.4

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/2] fusion/mptfc: Remove deprecated create_singlethread_workqueue
  2016-08-30 19:02 ` Bhaktipriya Shridhar
@ 2016-08-30 19:03   ` Bhaktipriya Shridhar
  -1 siblings, 0 replies; 12+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 19:03 UTC (permalink / raw)
  To: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl
  Cc: linux-scsi, linux-kernel, Tejun Heo

The workqueue "fc_rescan_work_q" queues multiple work items viz
&ioc->fc_rescan_work, &ioc->fc_lsc_work, &ioc->fc_setup_reset_work,
which require strict execution ordering.
Hence, an ordered dedicated workqueue has been used.

WQ_MEM_RECLAIM has been set since the workqueue is belongs to a storage
driver which is being used on a memory reclaim path and hence, requires
forward progress under memory pressure.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
---
 drivers/message/fusion/mptfc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/message/fusion/mptfc.c b/drivers/message/fusion/mptfc.c
index d8bf84a..129e132 100644
--- a/drivers/message/fusion/mptfc.c
+++ b/drivers/message/fusion/mptfc.c
@@ -1324,7 +1324,8 @@ mptfc_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 	snprintf(ioc->fc_rescan_work_q_name, sizeof(ioc->fc_rescan_work_q_name),
 		 "mptfc_wq_%d", sh->host_no);
 	ioc->fc_rescan_work_q =
-		create_singlethread_workqueue(ioc->fc_rescan_work_q_name);
+		alloc_ordered_workqueue(ioc->fc_rescan_work_q_name,
+					WQ_MEM_RECLAIM);
 	if (!ioc->fc_rescan_work_q)
 		goto out_mptfc_probe;

--
2.1.4

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 1/2] fusion/mptfc: Remove deprecated create_singlethread_workqueue
@ 2016-08-30 19:03   ` Bhaktipriya Shridhar
  0 siblings, 0 replies; 12+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 19:03 UTC (permalink / raw)
  To: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl
  Cc: linux-scsi, linux-kernel, Tejun Heo

The workqueue "fc_rescan_work_q" queues multiple work items viz
&ioc->fc_rescan_work, &ioc->fc_lsc_work, &ioc->fc_setup_reset_work,
which require strict execution ordering.
Hence, an ordered dedicated workqueue has been used.

WQ_MEM_RECLAIM has been set since the workqueue is belongs to a storage
driver which is being used on a memory reclaim path and hence, requires
forward progress under memory pressure.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
---
 drivers/message/fusion/mptfc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/message/fusion/mptfc.c b/drivers/message/fusion/mptfc.c
index d8bf84a..129e132 100644
--- a/drivers/message/fusion/mptfc.c
+++ b/drivers/message/fusion/mptfc.c
@@ -1324,7 +1324,8 @@ mptfc_probe(struct pci_dev *pdev, const struct pci_device_id *id)
 	snprintf(ioc->fc_rescan_work_q_name, sizeof(ioc->fc_rescan_work_q_name),
 		 "mptfc_wq_%d", sh->host_no);
 	ioc->fc_rescan_work_q =
-		create_singlethread_workqueue(ioc->fc_rescan_work_q_name);
+		alloc_ordered_workqueue(ioc->fc_rescan_work_q_name,
+					WQ_MEM_RECLAIM);
 	if (!ioc->fc_rescan_work_q)
 		goto out_mptfc_probe;

--
2.1.4

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/2] fusion: mptbase: Remove deprecated create_singlethread_workqueue
  2016-08-30 19:02 ` Bhaktipriya Shridhar
@ 2016-08-30 19:03   ` Bhaktipriya Shridhar
  -1 siblings, 0 replies; 12+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 19:03 UTC (permalink / raw)
  To: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl
  Cc: linux-scsi, linux-kernel, Tejun Heo

The workqueues "ioc->reset_work_q" and "ioc->fw_event_q" queue a single
work item &ioc->fault_reset_work and &fw_event->work, respectively and
hence don't require ordering. Hence, they have been converted to use
alloc_workqueue().

The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
memory pressure since the workqueue belongs to a storage driver which is
being used on a memory reclaim path.

Since there are fixed number of work items, explicit concurrency
limit is unnecessary here.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
---
 drivers/message/fusion/mptbase.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index 5537f8d..89c7ed1 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -1865,8 +1865,8 @@ mpt_attach(struct pci_dev *pdev, const struct pci_device_id *id)

 	snprintf(ioc->reset_work_q_name, MPT_KOBJ_NAME_LEN,
 		 "mpt_poll_%d", ioc->id);
-	ioc->reset_work_q =
-		create_singlethread_workqueue(ioc->reset_work_q_name);
+	ioc->reset_work_q = alloc_workqueue(ioc->reset_work_q_name,
+					    WQ_MEM_RECLAIM, 0);
 	if (!ioc->reset_work_q) {
 		printk(MYIOC_s_ERR_FMT "Insufficient memory to add adapter!\n",
 		    ioc->name);
@@ -1992,7 +1992,8 @@ mpt_attach(struct pci_dev *pdev, const struct pci_device_id *id)
 	INIT_LIST_HEAD(&ioc->fw_event_list);
 	spin_lock_init(&ioc->fw_event_lock);
 	snprintf(ioc->fw_event_q_name, MPT_KOBJ_NAME_LEN, "mpt/%d", ioc->id);
-	ioc->fw_event_q = create_singlethread_workqueue(ioc->fw_event_q_name);
+	ioc->fw_event_q = alloc_workqueue(ioc->fw_event_q_name,
+					  WQ_MEM_RECLAIM, 0);
 	if (!ioc->fw_event_q) {
 		printk(MYIOC_s_ERR_FMT "Insufficient memory to add adapter!\n",
 		    ioc->name);
--
2.1.4

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/2] fusion: mptbase: Remove deprecated create_singlethread_workqueue
@ 2016-08-30 19:03   ` Bhaktipriya Shridhar
  0 siblings, 0 replies; 12+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 19:03 UTC (permalink / raw)
  To: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl
  Cc: linux-scsi, linux-kernel, Tejun Heo

The workqueues "ioc->reset_work_q" and "ioc->fw_event_q" queue a single
work item &ioc->fault_reset_work and &fw_event->work, respectively and
hence don't require ordering. Hence, they have been converted to use
alloc_workqueue().

The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
memory pressure since the workqueue belongs to a storage driver which is
being used on a memory reclaim path.

Since there are fixed number of work items, explicit concurrency
limit is unnecessary here.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
---
 drivers/message/fusion/mptbase.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index 5537f8d..89c7ed1 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -1865,8 +1865,8 @@ mpt_attach(struct pci_dev *pdev, const struct pci_device_id *id)

 	snprintf(ioc->reset_work_q_name, MPT_KOBJ_NAME_LEN,
 		 "mpt_poll_%d", ioc->id);
-	ioc->reset_work_q =
-		create_singlethread_workqueue(ioc->reset_work_q_name);
+	ioc->reset_work_q = alloc_workqueue(ioc->reset_work_q_name,
+					    WQ_MEM_RECLAIM, 0);
 	if (!ioc->reset_work_q) {
 		printk(MYIOC_s_ERR_FMT "Insufficient memory to add adapter!\n",
 		    ioc->name);
@@ -1992,7 +1992,8 @@ mpt_attach(struct pci_dev *pdev, const struct pci_device_id *id)
 	INIT_LIST_HEAD(&ioc->fw_event_list);
 	spin_lock_init(&ioc->fw_event_lock);
 	snprintf(ioc->fw_event_q_name, MPT_KOBJ_NAME_LEN, "mpt/%d", ioc->id);
-	ioc->fw_event_q = create_singlethread_workqueue(ioc->fw_event_q_name);
+	ioc->fw_event_q = alloc_workqueue(ioc->fw_event_q_name,
+					  WQ_MEM_RECLAIM, 0);
 	if (!ioc->fw_event_q) {
 		printk(MYIOC_s_ERR_FMT "Insufficient memory to add adapter!\n",
 		    ioc->name);
--
2.1.4

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH 1/2] fusion/mptfc: Remove deprecated create_singlethread_workqueue
  2016-08-30 19:03   ` Bhaktipriya Shridhar
@ 2016-08-31 14:25     ` Tejun Heo
  -1 siblings, 0 replies; 12+ messages in thread
From: Tejun Heo @ 2016-08-31 14:25 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl, linux-scsi, linux-kernel

On Wed, Aug 31, 2016 at 12:33:05AM +0530, Bhaktipriya Shridhar wrote:
> The workqueue "fc_rescan_work_q" queues multiple work items viz
> &ioc->fc_rescan_work, &ioc->fc_lsc_work, &ioc->fc_setup_reset_work,
> which require strict execution ordering.
> Hence, an ordered dedicated workqueue has been used.
> 
> WQ_MEM_RECLAIM has been set since the workqueue is belongs to a storage
> driver which is being used on a memory reclaim path and hence, requires
> forward progress under memory pressure.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Acked-by: Tejun Heo <tj@kernel.org>

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 1/2] fusion/mptfc: Remove deprecated create_singlethread_workqueue
@ 2016-08-31 14:25     ` Tejun Heo
  0 siblings, 0 replies; 12+ messages in thread
From: Tejun Heo @ 2016-08-31 14:25 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl, linux-scsi, linux-kernel

On Wed, Aug 31, 2016 at 12:33:05AM +0530, Bhaktipriya Shridhar wrote:
> The workqueue "fc_rescan_work_q" queues multiple work items viz
> &ioc->fc_rescan_work, &ioc->fc_lsc_work, &ioc->fc_setup_reset_work,
> which require strict execution ordering.
> Hence, an ordered dedicated workqueue has been used.
> 
> WQ_MEM_RECLAIM has been set since the workqueue is belongs to a storage
> driver which is being used on a memory reclaim path and hence, requires
> forward progress under memory pressure.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Acked-by: Tejun Heo <tj@kernel.org>

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] fusion: mptbase: Remove deprecated create_singlethread_workqueue
  2016-08-30 19:03   ` Bhaktipriya Shridhar
@ 2016-08-31 14:25     ` Tejun Heo
  -1 siblings, 0 replies; 12+ messages in thread
From: Tejun Heo @ 2016-08-31 14:25 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl, linux-scsi, linux-kernel

On Wed, Aug 31, 2016 at 12:33:25AM +0530, Bhaktipriya Shridhar wrote:
> The workqueues "ioc->reset_work_q" and "ioc->fw_event_q" queue a single
> work item &ioc->fault_reset_work and &fw_event->work, respectively and
> hence don't require ordering. Hence, they have been converted to use
> alloc_workqueue().
> 
> The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
> memory pressure since the workqueue belongs to a storage driver which is
> being used on a memory reclaim path.
> 
> Since there are fixed number of work items, explicit concurrency
> limit is unnecessary here.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Acked-by: Tejun Heo <tj@kernel.org>

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] fusion: mptbase: Remove deprecated create_singlethread_workqueue
@ 2016-08-31 14:25     ` Tejun Heo
  0 siblings, 0 replies; 12+ messages in thread
From: Tejun Heo @ 2016-08-31 14:25 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl, linux-scsi, linux-kernel

On Wed, Aug 31, 2016 at 12:33:25AM +0530, Bhaktipriya Shridhar wrote:
> The workqueues "ioc->reset_work_q" and "ioc->fw_event_q" queue a single
> work item &ioc->fault_reset_work and &fw_event->work, respectively and
> hence don't require ordering. Hence, they have been converted to use
> alloc_workqueue().
> 
> The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
> memory pressure since the workqueue belongs to a storage driver which is
> being used on a memory reclaim path.
> 
> Since there are fixed number of work items, explicit concurrency
> limit is unnecessary here.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Acked-by: Tejun Heo <tj@kernel.org>

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/2] fusion: Remove deprecated create_singlethread_workqueue
  2016-08-30 19:02 ` Bhaktipriya Shridhar
@ 2016-09-02 10:14   ` Martin K. Petersen
  -1 siblings, 0 replies; 12+ messages in thread
From: Martin K. Petersen @ 2016-09-02 10:14 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl, linux-scsi, linux-kernel, Tejun Heo

>>>>> "Bhaktipriya" == Bhaktipriya Shridhar <bhaktipriya96@gmail.com> writes:

Bhaktipriya> This patch set removes deprecated
Bhaktipriya> create_singlethread_workqueue instances from
Bhaktipriya> drivers/message

Applied to 4.9/scsi-queue.

Thanks!

-- 
Martin K. Petersen	Oracle Linux Engineering

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/2] fusion: Remove deprecated create_singlethread_workqueue
@ 2016-09-02 10:14   ` Martin K. Petersen
  0 siblings, 0 replies; 12+ messages in thread
From: Martin K. Petersen @ 2016-09-02 10:14 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Sathya Prakash, Chaitra P B, Suganath Prabu Subramani,
	MPT-FusionLinux.pdl, linux-scsi, linux-kernel, Tejun Heo

>>>>> "Bhaktipriya" == Bhaktipriya Shridhar <bhaktipriya96@gmail.com> writes:

Bhaktipriya> This patch set removes deprecated
Bhaktipriya> create_singlethread_workqueue instances from
Bhaktipriya> drivers/message

Applied to 4.9/scsi-queue.

Thanks!

-- 
Martin K. Petersen	Oracle Linux Engineering

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-09-02 10:17 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-30 19:02 [PATCH 0/2] fusion: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
2016-08-30 19:02 ` Bhaktipriya Shridhar
2016-08-30 19:03 ` [PATCH 1/2] fusion/mptfc: " Bhaktipriya Shridhar
2016-08-30 19:03   ` Bhaktipriya Shridhar
2016-08-31 14:25   ` Tejun Heo
2016-08-31 14:25     ` Tejun Heo
2016-08-30 19:03 ` [PATCH 2/2] fusion: mptbase: " Bhaktipriya Shridhar
2016-08-30 19:03   ` Bhaktipriya Shridhar
2016-08-31 14:25   ` Tejun Heo
2016-08-31 14:25     ` Tejun Heo
2016-09-02 10:14 ` [PATCH 0/2] fusion: " Martin K. Petersen
2016-09-02 10:14   ` Martin K. Petersen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.