All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] s390: Remove deprecated create_singlethread_workqueue
@ 2016-08-30 20:27 Bhaktipriya Shridhar
  2016-08-31 14:31 ` Tejun Heo
  0 siblings, 1 reply; 3+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 20:27 UTC (permalink / raw)
  To: Martin Schwidefsky, Heiko Carstens, Steffen Maier
  Cc: Tejun Heo, linux-s390, linux-kernel

The workqueue "appldata_wq" has been replaced with an ordered dedicated
workqueue.

WQ_MEM_RECLAIM has not been set since the workqueue is not being used on
a memory reclaim path.

The adapter->work_queue queues multiple work items viz
&adapter->scan_work, &port->rport_work, &adapter->ns_up_work,
&adapter->stat_work, adapter->work_queue, &adapter->events.work,
&port->gid_pn_work, &port->test_link_work. Hence, an ordered
dedicated workqueue has been used.

WQ_MEM_RECLAIM has been set to ensure forward progress under memory
pressure.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
---
 arch/s390/appldata/appldata_base.c | 2 +-
 drivers/s390/scsi/zfcp_aux.c       | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/s390/appldata/appldata_base.c b/arch/s390/appldata/appldata_base.c
index 15c9424..f587c48 100644
--- a/arch/s390/appldata/appldata_base.c
+++ b/arch/s390/appldata/appldata_base.c
@@ -542,7 +542,7 @@ static int __init appldata_init(void)
 		rc = PTR_ERR(appldata_pdev);
 		goto out_driver;
 	}
-	appldata_wq = create_singlethread_workqueue("appldata");
+	appldata_wq = alloc_ordered_workqueue("appldata", 0);
 	if (!appldata_wq) {
 		rc = -ENOMEM;
 		goto out_device;
diff --git a/drivers/s390/scsi/zfcp_aux.c b/drivers/s390/scsi/zfcp_aux.c
index c00ac46..bcc8f3d 100644
--- a/drivers/s390/scsi/zfcp_aux.c
+++ b/drivers/s390/scsi/zfcp_aux.c
@@ -310,7 +310,7 @@ static int zfcp_setup_adapter_work_queue(struct zfcp_adapter *adapter)

 	snprintf(name, sizeof(name), "zfcp_q_%s",
 		 dev_name(&adapter->ccw_device->dev));
-	adapter->work_queue = create_singlethread_workqueue(name);
+	adapter->work_queue = alloc_ordered_workqueue(name, WQ_MEM_RECLAIM);

 	if (adapter->work_queue)
 		return 0;
--
2.1.4

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

* Re: [PATCH] s390: Remove deprecated create_singlethread_workqueue
  2016-08-30 20:27 [PATCH] s390: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
@ 2016-08-31 14:31 ` Tejun Heo
  2016-09-03 10:53   ` Heiko Carstens
  0 siblings, 1 reply; 3+ messages in thread
From: Tejun Heo @ 2016-08-31 14:31 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Martin Schwidefsky, Heiko Carstens, Steffen Maier, linux-s390,
	linux-kernel

On Wed, Aug 31, 2016 at 01:57:20AM +0530, Bhaktipriya Shridhar wrote:
> The workqueue "appldata_wq" has been replaced with an ordered dedicated
> workqueue.
> 
> WQ_MEM_RECLAIM has not been set since the workqueue is not being used on
> a memory reclaim path.
> 
> The adapter->work_queue queues multiple work items viz
> &adapter->scan_work, &port->rport_work, &adapter->ns_up_work,
> &adapter->stat_work, adapter->work_queue, &adapter->events.work,
> &port->gid_pn_work, &port->test_link_work. Hence, an ordered
> dedicated workqueue has been used.
> 
> WQ_MEM_RECLAIM has been set to ensure forward progress under memory
> pressure.

I have no idea what these drivers do.  s390 folks, can you please shed
some light on whether these workqueues can be depended on during
memory reclaim?

Thanks.

-- 
tejun

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

* Re: [PATCH] s390: Remove deprecated create_singlethread_workqueue
  2016-08-31 14:31 ` Tejun Heo
@ 2016-09-03 10:53   ` Heiko Carstens
  0 siblings, 0 replies; 3+ messages in thread
From: Heiko Carstens @ 2016-09-03 10:53 UTC (permalink / raw)
  To: Tejun Heo
  Cc: Bhaktipriya Shridhar, Martin Schwidefsky, Steffen Maier,
	linux-s390, linux-kernel

On Wed, Aug 31, 2016 at 10:31:10AM -0400, Tejun Heo wrote:
> On Wed, Aug 31, 2016 at 01:57:20AM +0530, Bhaktipriya Shridhar wrote:
> > The workqueue "appldata_wq" has been replaced with an ordered dedicated
> > workqueue.
> > 
> > WQ_MEM_RECLAIM has not been set since the workqueue is not being used on
> > a memory reclaim path.
> > 
> > The adapter->work_queue queues multiple work items viz
> > &adapter->scan_work, &port->rport_work, &adapter->ns_up_work,
> > &adapter->stat_work, adapter->work_queue, &adapter->events.work,
> > &port->gid_pn_work, &port->test_link_work. Hence, an ordered
> > dedicated workqueue has been used.
> > 
> > WQ_MEM_RECLAIM has been set to ensure forward progress under memory
> > pressure.
> 
> I have no idea what these drivers do.  s390 folks, can you please shed
> some light on whether these workqueues can be depended on during
> memory reclaim?

The appldata device driver is only needed to gather statistical data and
therefore my wait when memory reclaim is in progress.

The zfcp device drivers is a SCSI-over-FC device driver and hence we depend
on it during memory reclaim. So setting WQ_MEM_RECLAIM is the right thing
to do here.

The patch looks ok, and I applied it.

Thanks!

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

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

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-30 20:27 [PATCH] s390: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
2016-08-31 14:31 ` Tejun Heo
2016-09-03 10:53   ` Heiko Carstens

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.