fs/ocfs2/cluster: remove deprecated create_singlethread_workqueue()
authorBhaktipriya Shridhar <bhaktipriya96@gmail.com>
Fri, 7 Oct 2016 23:57:10 +0000 (16:57 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 8 Oct 2016 01:46:26 +0000 (18:46 -0700)
The workqueue "o2net_wq" queues multiple work items viz
&old_sc->sc_shutdown_work, &sc->sc_rx_work, &sc->sc_connect_work which
require strict execution ordering.  Hence, an ordered dedicated
workqueue has been used.

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

Link: http://lkml.kernel.org/r/ddc12e5766c79ba26f8a00d98049107f8a1d4866.1472590094.git.bhaktipriya96@gmail.com
Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Cc: Mark Fasheh <mfasheh@suse.de>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Joseph Qi <joseph.qi@huawei.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/ocfs2/cluster/tcp.c

index 1d67fcb..8abab16 100644 (file)
@@ -2104,7 +2104,7 @@ int o2net_start_listening(struct o2nm_node *node)
        BUG_ON(o2net_listen_sock != NULL);
 
        mlog(ML_KTHREAD, "starting o2net thread...\n");
        BUG_ON(o2net_listen_sock != NULL);
 
        mlog(ML_KTHREAD, "starting o2net thread...\n");
-       o2net_wq = create_singlethread_workqueue("o2net");
+       o2net_wq = alloc_ordered_workqueue("o2net", WQ_MEM_RECLAIM);
        if (o2net_wq == NULL) {
                mlog(ML_ERROR, "unable to launch o2net thread\n");
                return -ENOMEM; /* ? */
        if (o2net_wq == NULL) {
                mlog(ML_ERROR, "unable to launch o2net thread\n");
                return -ENOMEM; /* ? */