From: Bhaktipriya Shridhar Date: Sun, 4 Sep 2016 15:24:11 +0000 (+0530) Subject: fs/afs/callback: Remove deprecated create_singlethread_workqueue X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=4c136dae62f7a62383a9d6563c8613e732bfefaf;p=deliverable%2Flinux.git fs/afs/callback: Remove deprecated create_singlethread_workqueue The workqueue "afs_callback_update_worker" queues multiple work items viz &vnode->cb_broken_work, &server->cb_break_work which require strict execution ordering. Hence, an ordered dedicated workqueue has been used. Since the workqueue is being used on a memory reclaim path, WQ_MEM_RECLAIM has been set to ensure forward progress under memory pressure. Signed-off-by: Bhaktipriya Shridhar Signed-off-by: David Howells --- diff --git a/fs/afs/callback.c b/fs/afs/callback.c index 7ef637d7f3a5..1e9d2f84e5b5 100644 --- a/fs/afs/callback.c +++ b/fs/afs/callback.c @@ -461,8 +461,8 @@ static void afs_callback_updater(struct work_struct *work) */ int __init afs_callback_update_init(void) { - afs_callback_update_worker = - create_singlethread_workqueue("kafs_callbackd"); + afs_callback_update_worker = alloc_ordered_workqueue("kafs_callbackd", + WQ_MEM_RECLAIM); return afs_callback_update_worker ? 0 : -ENOMEM; }