linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue
@ 2016-08-30 16:32 Bhaktipriya Shridhar
  2016-08-30 16:41 ` Petko Manolov
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Bhaktipriya Shridhar @ 2016-08-30 16:32 UTC (permalink / raw)
  To: Petko Manolov; +Cc: Tejun Heo, linux-usb, netdev, linux-kernel

The workqueue "pegasus_workqueue" queues a single work item per pegasus
instance and hence it doesn't require execution ordering. Hence,
alloc_workqueue has been used to replace the deprecated
create_singlethread_workqueue instance.

The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
memory pressure since it's a network driver.

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

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

diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c
index 9bbe0161..1434e5d 100644
--- a/drivers/net/usb/pegasus.c
+++ b/drivers/net/usb/pegasus.c
@@ -1129,7 +1129,8 @@ static int pegasus_probe(struct usb_interface *intf,
 		return -ENODEV;

 	if (pegasus_count == 0) {
-		pegasus_workqueue = create_singlethread_workqueue("pegasus");
+		pegasus_workqueue = alloc_workqueue("pegasus", WQ_MEM_RECLAIM,
+						    0);
 		if (!pegasus_workqueue)
 			return -ENOMEM;
 	}
--
2.1.4

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

* Re: [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue
  2016-08-30 16:32 [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
@ 2016-08-30 16:41 ` Petko Manolov
  2016-08-31 14:23 ` Tejun Heo
  2016-09-01 23:42 ` David Miller
  2 siblings, 0 replies; 5+ messages in thread
From: Petko Manolov @ 2016-08-30 16:41 UTC (permalink / raw)
  To: Bhaktipriya Shridhar
  Cc: Petko Manolov, Tejun Heo, linux-usb, netdev, linux-kernel

On 16-08-30 22:02:47, Bhaktipriya Shridhar wrote:
> The workqueue "pegasus_workqueue" queues a single work item per pegasus
> instance and hence it doesn't require execution ordering. Hence,
> alloc_workqueue has been used to replace the deprecated
> create_singlethread_workqueue instance.
> 
> The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
> memory pressure since it's a network driver.
> 
> Since there are fixed number of work items, explicit concurrency
> limit is unnecessary here.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
> ---
>  drivers/net/usb/pegasus.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c
> index 9bbe0161..1434e5d 100644
> --- a/drivers/net/usb/pegasus.c
> +++ b/drivers/net/usb/pegasus.c
> @@ -1129,7 +1129,8 @@ static int pegasus_probe(struct usb_interface *intf,
>  		return -ENODEV;
> 
>  	if (pegasus_count == 0) {
> -		pegasus_workqueue = create_singlethread_workqueue("pegasus");
> +		pegasus_workqueue = alloc_workqueue("pegasus", WQ_MEM_RECLAIM,
> +						    0);
>  		if (!pegasus_workqueue)
>  			return -ENOMEM;
>  	}
> --
> 2.1.4

Nope, there is no need for singlethread-ness here.  As long as the flag you used 
is doing the right thing i am OK with the patch.


		Petko

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

* Re: [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue
  2016-08-30 16:32 [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
  2016-08-30 16:41 ` Petko Manolov
@ 2016-08-31 14:23 ` Tejun Heo
  2016-08-31 14:27   ` Petko Manolov
  2016-09-01 23:42 ` David Miller
  2 siblings, 1 reply; 5+ messages in thread
From: Tejun Heo @ 2016-08-31 14:23 UTC (permalink / raw)
  To: Bhaktipriya Shridhar; +Cc: Petko Manolov, linux-usb, netdev, linux-kernel

On Tue, Aug 30, 2016 at 10:02:47PM +0530, Bhaktipriya Shridhar wrote:
> The workqueue "pegasus_workqueue" queues a single work item per pegasus
> instance and hence it doesn't require execution ordering. Hence,
> alloc_workqueue has been used to replace the deprecated
> create_singlethread_workqueue instance.
> 
> The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
> memory pressure since it's a network driver.
> 
> 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] 5+ messages in thread

* Re: [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue
  2016-08-31 14:23 ` Tejun Heo
@ 2016-08-31 14:27   ` Petko Manolov
  0 siblings, 0 replies; 5+ messages in thread
From: Petko Manolov @ 2016-08-31 14:27 UTC (permalink / raw)
  To: Tejun Heo, Bhaktipriya Shridhar
  Cc: Petko Manolov, linux-usb, netdev, linux-kernel

On August 31, 2016 5:23:05 PM GMT+03:00, Tejun Heo <tj@kernel.org> wrote:
>On Tue, Aug 30, 2016 at 10:02:47PM +0530, Bhaktipriya Shridhar wrote:
>> The workqueue "pegasus_workqueue" queues a single work item per
>pegasus
>> instance and hence it doesn't require execution ordering. Hence,
>> alloc_workqueue has been used to replace the deprecated
>> create_singlethread_workqueue instance.
>> 
>> The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
>> memory pressure since it's a network driver.
>> 
>> 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.


Acked-by: Petko Manolov <petkan@mip-labs.com>


cheers,
Petko

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

* Re: [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue
  2016-08-30 16:32 [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
  2016-08-30 16:41 ` Petko Manolov
  2016-08-31 14:23 ` Tejun Heo
@ 2016-09-01 23:42 ` David Miller
  2 siblings, 0 replies; 5+ messages in thread
From: David Miller @ 2016-09-01 23:42 UTC (permalink / raw)
  To: bhaktipriya96; +Cc: petkan, tj, linux-usb, netdev, linux-kernel

From: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Date: Tue, 30 Aug 2016 22:02:47 +0530

> The workqueue "pegasus_workqueue" queues a single work item per pegasus
> instance and hence it doesn't require execution ordering. Hence,
> alloc_workqueue has been used to replace the deprecated
> create_singlethread_workqueue instance.
> 
> The WQ_MEM_RECLAIM flag has been set to ensure forward progress under
> memory pressure since it's a network driver.
> 
> Since there are fixed number of work items, explicit concurrency
> limit is unnecessary here.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Applied.

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

end of thread, other threads:[~2016-09-01 23:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-30 16:32 [PATCH] net: pegasus: Remove deprecated create_singlethread_workqueue Bhaktipriya Shridhar
2016-08-30 16:41 ` Petko Manolov
2016-08-31 14:23 ` Tejun Heo
2016-08-31 14:27   ` Petko Manolov
2016-09-01 23:42 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).