summaryrefslogtreecommitdiffstats
path: root/patches/boot_time_opt_guest/0112-ksm-wakeups.patch
blob: b131e3fe1aaa6c285b21af5c170f3c0c5cf47a19 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From 2dc48e4b5c651691b7028991b64c935047b41b19 Mon Sep 17 00:00:00 2001
From: Arjan van de Ven <arjan@linux.intel.com>
Date: Mon, 14 Mar 2016 11:06:46 -0600
Subject: [PATCH 112/114] ksm-wakeups

reduce wakeups in ksm
---
 mm/ksm.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/mm/ksm.c b/mm/ksm.c
index 9ae6011a41f8..eecd3ff669e2 100644
--- a/mm/ksm.c
+++ b/mm/ksm.c
@@ -1725,8 +1725,12 @@ static int ksm_scan_thread(void *nothing)
 		try_to_freeze();
 
 		if (ksmd_should_run()) {
-			schedule_timeout_interruptible(
-				msecs_to_jiffies(ksm_thread_sleep_millisecs));
+			if (ksm_thread_sleep_millisecs >= 1000)
+				schedule_timeout_interruptible(
+					msecs_to_jiffies(round_jiffies_relative(ksm_thread_sleep_millisecs)));
+			else
+				schedule_timeout_interruptible(
+					msecs_to_jiffies(ksm_thread_sleep_millisecs));
 		} else {
 			wait_event_freezable(ksm_thread_wait,
 				ksmd_should_run() || kthread_should_stop());
-- 
2.11.1