diff options
| author | Shiraz Hashim <shashim@codeaurora.org> | 2015-06-11 10:41:54 +0530 |
|---|---|---|
| committer | Kyle Yan <kyan@codeaurora.org> | 2016-06-29 15:12:09 -0700 |
| commit | 1be1715f1488a28fe8d29cbb065ed9de4669efed (patch) | |
| tree | ce79543e86174f9da8806e0a78f59bec95432585 /mm/process_reclaim.c | |
| parent | 9ff04770060db13d7d6dcfad1d0d72b4f04eaf26 (diff) | |
mm: process_reclaim: use unbounded cpu workqueue
It is observed that in some cases process reclaim work
doesn't get chance to run due to presence of RT scheduled
on the same CPU. This is leading to user space freeze and
a live-lock situation where RT itself is looping for a
page to be present in swap cache while process reclaim
work is unable to schedule and do the same.
Schedule process reclaim work on unbounded cpu workqueue
so that the work has opportunity to be scheduled on to
other cpu.
Change-Id: I6852f7e8d0a344ab5631b188627263f11414f27e
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
Diffstat (limited to 'mm/process_reclaim.c')
| -rw-r--r-- | mm/process_reclaim.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/process_reclaim.c b/mm/process_reclaim.c index 271fb38e0cb0..8cf5f13548e8 100644 --- a/mm/process_reclaim.c +++ b/mm/process_reclaim.c @@ -230,7 +230,7 @@ static int vmpressure_notifier(struct notifier_block *nb, if ((pressure >= pressure_min) && (pressure < pressure_max)) if (!work_pending(&swap_work)) - schedule_work(&swap_work); + queue_work(system_unbound_wq, &swap_work); return 0; } |
