libertas_tf: Remove create_workqueue
authorBhaktipriya Shridhar <bhaktipriya96@gmail.com>
Tue, 7 Jun 2016 20:08:53 +0000 (01:38 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 29 Jun 2016 15:42:43 +0000 (18:42 +0300)
alloc_workqueue replaces deprecated create_workqueue().

A dedicated workqueue has been used since the workitem (viz
&priv->cmd_work per priv, which maps to lbtf_cmd_work) is involved in
actual command processing and may be used on a memory reclaim path.
The workitems require forward progress under memory pressure and hence,
WQ_MEM_RECLAIM has been set. Since there are only a 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>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/libertas_tf/main.c

index 75bf0c8..54e426c 100644 (file)
@@ -735,7 +735,7 @@ EXPORT_SYMBOL_GPL(lbtf_bcn_sent);
 static int __init lbtf_init_module(void)
 {
        lbtf_deb_enter(LBTF_DEB_MAIN);
-       lbtf_wq = create_workqueue("libertastf");
+       lbtf_wq = alloc_workqueue("libertastf", WQ_MEM_RECLAIM, 0);
        if (lbtf_wq == NULL) {
                printk(KERN_ERR "libertastf: couldn't create workqueue\n");
                return -ENOMEM;