[PATCH 5/15] sched: Add function to build MN sched domain

From: Andreas Herrmann
Date: Thu Aug 20 2009 - 09:37:04 EST



Signed-off-by: Andreas Herrmann <andreas.herrmann3@xxxxxxx>
---
kernel/sched.c | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/kernel/sched.c b/kernel/sched.c
index d85985d..7b8b2ab 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -8569,6 +8569,9 @@ SD_INIT_FUNC(CPU)
#ifdef CONFIG_SCHED_MC
SD_INIT_FUNC(MC)
#endif
+#ifdef CONFIG_SCHED_MN
+ SD_INIT_FUNC(MN)
+#endif

static int default_relax_domain_level = -1;

@@ -8727,6 +8730,24 @@ static struct sched_domain *__build_cpu_sched_domain(struct s_data *d,
return sd;
}

+static struct sched_domain *__build_mn_sched_domain(struct s_data *d,
+ const struct cpumask *cpu_map, struct sched_domain_attr *attr,
+ struct sched_domain *parent, int i)
+{
+ struct sched_domain *sd = parent;
+#ifdef CONFIG_SCHED_MN
+ sd = &per_cpu(cpu_node_domains, i).sd;
+ SD_INIT(sd, MN);
+ set_domain_attribute(sd, attr);
+ cpumask_and(sched_domain_span(sd), cpu_map,
+ topology_cpu_node_cpumask(i));
+ sd->parent = parent;
+ parent->child = sd;
+ cpu_to_cpu_node_group(i, cpu_map, &sd->groups, d->tmpmask);
+#endif
+ return sd;
+}
+
static struct sched_domain *__build_mc_sched_domain(struct s_data *d,
const struct cpumask *cpu_map, struct sched_domain_attr *attr,
struct sched_domain *parent, int i)
--
1.6.0.4



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