lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 22 Jul 2014 21:59:05 -0400
From:	"Chen, Gong" <gong.chen@...ux.intel.com>
To:	linux-kernel@...r.kernel.org
Cc:	mingo@...nel.org, tglx@...utronix.de, paulus@...ba.org,
	benh@...nel.crashing.org, tony.luck@...el.com, hpa@...or.com,
	jkosina@...e.cz, rafael.j.wysocki@...el.com, bp@...en8.de,
	linux@....linux.org.uk, ralf@...ux-mips.org,
	schwidefsky@...ibm.com, davem@...emloft.net,
	viro@...iv.linux.org.uk, fweisbec@...il.com, cl@...ux.com,
	akpm@...ux-foundation.org, axboe@...nel.dk,
	JBottomley@...allels.com, neilb@...e.de,
	christoffer.dall@...aro.org, rostedt@...dmis.org, rric@...nel.org,
	gregkh@...uxfoundation.org, mhocko@...e.cz, david@...morbit.com,
	"Chen, Gong" <gong.chen@...ux.intel.com>
Subject: [RFC PATCH v1 29/70] kernel, sched, core: _FROZEN Cleanup

Remove XXX_FROZEN state from sched/core.

Signed-off-by: Chen, Gong <gong.chen@...ux.intel.com>
---
 kernel/sched/core.c | 55 ++++++++++++++++++++++++-----------------------------
 1 file changed, 25 insertions(+), 30 deletions(-)

diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index bc1638b..f0aff5f 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -459,13 +459,10 @@ hotplug_hrtick(struct notifier_block *nfb, unsigned long action, void *hcpu)
 {
 	int cpu = (int)(long)hcpu;
 
-	switch (action) {
+	switch (action & ~CPU_TASKS_FROZEN) {
 	case CPU_UP_CANCELED:
-	case CPU_UP_CANCELED_FROZEN:
 	case CPU_DOWN_PREPARE:
-	case CPU_DOWN_PREPARE_FROZEN:
 	case CPU_DEAD:
-	case CPU_DEAD_FROZEN:
 		hrtick_clear(cpu_rq(cpu));
 		return NOTIFY_OK;
 	}
@@ -6742,30 +6739,28 @@ static int num_cpus_frozen;	/* used to mark begin/end of suspend/resume */
 static int cpuset_cpu_active(struct notifier_block *nfb, unsigned long action,
 			     void *hcpu)
 {
-	switch (action) {
-	case CPU_ONLINE_FROZEN:
-	case CPU_DOWN_FAILED_FROZEN:
-
-		/*
-		 * num_cpus_frozen tracks how many CPUs are involved in suspend
-		 * resume sequence. As long as this is not the last online
-		 * operation in the resume sequence, just build a single sched
-		 * domain, ignoring cpusets.
-		 */
-		num_cpus_frozen--;
-		if (likely(num_cpus_frozen)) {
-			partition_sched_domains(1, NULL, NULL);
-			break;
+	switch (action & ~CPU_TASKS_FROZEN) {
+	case CPU_ONLINE:
+	case CPU_DOWN_FAILED:
+		if (action & CPU_TASKS_FROZEN) {
+			/*
+			 * num_cpus_frozen tracks how many CPUs are involved
+			 * in suspend resume sequence. As long as this is not
+			 * the last online operation in the resume sequence,
+			 * just build a single sched domain, ignoring cpusets.
+			 */
+			num_cpus_frozen--;
+			if (likely(num_cpus_frozen)) {
+				partition_sched_domains(1, NULL, NULL);
+				break;
+			}
 		}
 
 		/*
-		 * This is the last CPU online operation. So fall through and
-		 * restore the original sched domains by considering the
-		 * cpuset configurations.
+		 * This is the last CPU online operation. So restore the
+		 * original sched domains by considering the cpuset
+		 * configurations.
 		 */
-
-	case CPU_ONLINE:
-	case CPU_DOWN_FAILED:
 		cpuset_update_active_cpus(true);
 		break;
 	default:
@@ -6777,13 +6772,13 @@ static int cpuset_cpu_active(struct notifier_block *nfb, unsigned long action,
 static int cpuset_cpu_inactive(struct notifier_block *nfb, unsigned long action,
 			       void *hcpu)
 {
-	switch (action) {
+	switch (action & ~CPU_TASKS_FROZEN) {
 	case CPU_DOWN_PREPARE:
-		cpuset_update_active_cpus(false);
-		break;
-	case CPU_DOWN_PREPARE_FROZEN:
-		num_cpus_frozen++;
-		partition_sched_domains(1, NULL, NULL);
+		if (action & CPU_TASKS_FROZEN) {
+			num_cpus_frozen++;
+			partition_sched_domains(1, NULL, NULL);
+		} else
+			cpuset_update_active_cpus(false);
 		break;
 	default:
 		return NOTIFY_DONE;
-- 
2.0.0.rc2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists