From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel <linux-kernel@vger.kernel.org>,
Ingo Molnar <mingo@elte.hu>,
"Siddha, Suresh B" <suresh.b.siddha@intel.com>
Subject: [patch 2/5] sched: NULL domains
Date: Wed, 06 Apr 2005 09:45:27 +1000 [thread overview]
Message-ID: <42532317.5000901@yahoo.com.au> (raw)
In-Reply-To: <425322E0.9070307@yahoo.com.au>
[-- Attachment #1: Type: text/plain, Size: 4 bytes --]
2/5
[-- Attachment #2: sched-null-domains.patch --]
[-- Type: text/plain, Size: 2380 bytes --]
The previous patch fixed the last 2 places that directly access a
runqueue's sched-domain and assume it cannot be NULL.
We can now use a NULL domain instead of a dummy domain to signify
no balancing is to happen. No functional changes.
Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Index: linux-2.6/kernel/sched.c
===================================================================
--- linux-2.6.orig/kernel/sched.c 2005-04-05 16:38:40.000000000 +1000
+++ linux-2.6/kernel/sched.c 2005-04-05 18:39:08.000000000 +1000
@@ -4887,7 +4887,7 @@ void __devinit cpu_attach_domain(struct
tmp->parent = parent->parent;
}
- if (sd_degenerate(sd))
+ if (sd && sd_degenerate(sd))
sd = sd->parent;
sched_domain_debug(sd, cpu);
@@ -5054,7 +5054,7 @@ static void __devinit arch_init_sched_do
cpus_and(cpu_default_map, cpu_default_map, cpu_online_map);
/*
- * Set up domains. Isolated domains just stay on the dummy domain.
+ * Set up domains. Isolated domains just stay on the NULL domain.
*/
for_each_cpu_mask(i, cpu_default_map) {
int group;
@@ -5167,18 +5167,11 @@ static void __devinit arch_destroy_sched
#endif /* ARCH_HAS_SCHED_DOMAIN */
-/*
- * Initial dummy domain for early boot and for hotplug cpu. Being static,
- * it is initialized to zero, so all balancing flags are cleared which is
- * what we want.
- */
-static struct sched_domain sched_domain_dummy;
-
#ifdef CONFIG_HOTPLUG_CPU
/*
* Force a reinitialization of the sched domains hierarchy. The domains
* and groups cannot be updated in place without racing with the balancing
- * code, so we temporarily attach all running cpus to a "dummy" domain
+ * code, so we temporarily attach all running cpus to the NULL domain
* which will prevent rebalancing while the sched domains are recalculated.
*/
static int update_sched_domains(struct notifier_block *nfb,
@@ -5190,7 +5183,7 @@ static int update_sched_domains(struct n
case CPU_UP_PREPARE:
case CPU_DOWN_PREPARE:
for_each_online_cpu(i)
- cpu_attach_domain(&sched_domain_dummy, i);
+ cpu_attach_domain(NULL, i);
arch_destroy_sched_domains();
return NOTIFY_OK;
@@ -5253,7 +5246,7 @@ void __init sched_init(void)
rq->best_expired_prio = MAX_PRIO;
#ifdef CONFIG_SMP
- rq->sd = &sched_domain_dummy;
+ rq->sd = NULL;
for (j = 1; j < 3; j++)
rq->cpu_load[j] = 0;
rq->active_balance = 0;
next prev parent reply other threads:[~2005-04-05 23:45 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-04-05 23:44 [patch 1/5] sched: remove degenerate domains Nick Piggin
2005-04-05 23:45 ` Nick Piggin [this message]
2005-04-05 23:46 ` [patch 3/5] sched: multilevel sbe and sbf Nick Piggin
2005-04-05 23:47 ` [patch 4/5] sched: RCU sched domains Nick Piggin
2005-04-05 23:49 ` [patch 5/5] sched: consolidate sbe sbf Nick Piggin
2005-04-06 6:27 ` Ingo Molnar
2005-04-06 8:09 ` Nick Piggin
2005-04-06 8:16 ` Nick Piggin
2005-04-07 7:17 ` Ingo Molnar
2005-04-07 7:15 ` Ingo Molnar
2005-04-06 6:18 ` [patch 4/5] sched: RCU sched domains Ingo Molnar
2005-04-06 8:01 ` Nick Piggin
2005-04-07 7:11 ` Ingo Molnar
2005-04-07 7:58 ` Nick Piggin
2005-04-11 22:15 ` Paul E. McKenney
2005-04-12 0:03 ` Nick Piggin
2005-04-06 5:54 ` [patch 3/5] sched: multilevel sbe and sbf Ingo Molnar
2005-04-06 7:53 ` Nick Piggin
2005-04-06 5:45 ` [patch 2/5] sched: NULL domains Ingo Molnar
2005-04-06 5:48 ` Ingo Molnar
2005-04-06 7:51 ` Nick Piggin
2005-04-06 5:44 ` [patch 1/5] sched: remove degenerate domains Ingo Molnar
2005-04-06 7:10 ` Siddha, Suresh B
2005-04-06 7:13 ` Ingo Molnar
2005-04-06 8:12 ` Nick Piggin
2005-04-06 7:49 ` Nick Piggin
2005-04-07 7:00 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=42532317.5000901@yahoo.com.au \
--to=nickpiggin@yahoo.com.au \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=suresh.b.siddha@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.