fs/afs/rxrpc: Remove deprecated create_singlethread_workqueue
authorBhaktipriya Shridhar <bhaktipriya96@gmail.com>
Sun, 4 Sep 2016 15:23:42 +0000 (20:53 +0530)
committerDavid Howells <dhowells@redhat.com>
Sun, 4 Sep 2016 20:41:39 +0000 (21:41 +0100)
The workqueue "afs_async_calls" queues work item
&call->async_work per afs_call. Since there could be multiple calls and since
these calls can be run concurrently, 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 because the workqueue 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>
Signed-off-by: David Howells <dhowells@redhat.com>
fs/afs/rxrpc.c

index 244896baf24102f43d15acf3634c1bec2d97aeb1..37608be52abd2809a02b3349146029bbf5e50d94 100644 (file)
@@ -76,7 +76,7 @@ int afs_open_socket(void)
        _enter("");
 
        ret = -ENOMEM;
-       afs_async_calls = create_singlethread_workqueue("kafsd");
+       afs_async_calls = alloc_workqueue("kafsd", WQ_MEM_RECLAIM, 0);
        if (!afs_async_calls)
                goto error_0;