Commit e4819013 authored by Bhaktipriya Shridhar's avatar Bhaktipriya Shridhar Committed by Johannes Berg

cfg80211: Remove deprecated create_singlethread_workqueue

The workqueue "cfg80211_wq" is involved in cleanup, scan and event related
works. It queues multiple work items &rdev->event_work,
&rdev->dfs_update_channels_wk,
&wiphy_to_rdev(request->wiphy)->scan_done_wk,
&wiphy_to_rdev(wiphy)->sched_scan_results_wk, which require strict
execution ordering.
Hence, an ordered dedicated workqueue has been used.

Since it's a wireless driver, WQ_MEM_RECLAIM has been set to ensure
forward progress under memory pressure.
Signed-off-by: default avatarBhaktipriya Shridhar <bhaktipriya96@gmail.com>
Acked-by: default avatarTejun Heo <tj@kernel.org>
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent d8212184
...@@ -1252,7 +1252,7 @@ static int __init cfg80211_init(void) ...@@ -1252,7 +1252,7 @@ static int __init cfg80211_init(void)
if (err) if (err)
goto out_fail_reg; goto out_fail_reg;
cfg80211_wq = create_singlethread_workqueue("cfg80211"); cfg80211_wq = alloc_ordered_workqueue("cfg80211", WQ_MEM_RECLAIM);
if (!cfg80211_wq) { if (!cfg80211_wq) {
err = -ENOMEM; err = -ENOMEM;
goto out_fail_wq; goto out_fail_wq;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment