lkml.org 
[lkml]   [2012]   [Mar]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH bisected regression] sched: rebuild sched domains at suspend/resume
From
Date
This is fix for suspend/resume regression introduced in commit 8f2f748b0656
("CPU hotplug, cpusets, suspend: Don't touch cpusets during suspend/resume")
Without this patch suspend always hangs on my thinkpad x220 (2 x CPU * HT).

cpuset_update_active_cpus() not only juggles with bits in cpusets,
it also calls sched-domains rebuilding after all.

This patch restores sched-domain rebuilds, as it was before that commit.

Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org>
---
kernel/sched/core.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 9995eb0..0fb7406 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -6732,6 +6732,10 @@ static int cpuset_cpu_active(struct notifier_block *nfb, unsigned long action,
case CPU_DOWN_FAILED:
cpuset_update_active_cpus();
return NOTIFY_OK;
+ case CPU_ONLINE_FROZEN:
+ case CPU_DOWN_FAILED_FROZEN:
+ rebuild_sched_domains();
+ return NOTIFY_OK;
default:
return NOTIFY_DONE;
}
@@ -6744,6 +6748,9 @@ static int cpuset_cpu_inactive(struct notifier_block *nfb, unsigned long action,
case CPU_DOWN_PREPARE:
cpuset_update_active_cpus();
return NOTIFY_OK;
+ case CPU_DOWN_PREPARE_FROZEN:
+ rebuild_sched_domains();
+ return NOTIFY_OK;
default:
return NOTIFY_DONE;
}


\
 
 \ /
  Last update: 2012-03-06 21:47    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site