summaryrefslogtreecommitdiff
path: root/kernel/sched.c
diff options
context:
space:
mode:
authorGautham R Shenoy <ego@in.ibm.com>2008-05-29 20:56:32 +0530
committerIngo Molnar <mingo@elte.hu>2008-06-06 15:19:41 +0200
commit099f98c8a1f13501a98afbfff4756395a610581c (patch)
tree7948f026ebd702b43575c74a7c839c632f66c67e /kernel/sched.c
parente29c98d12b3f02d6ac711c60b4a5f8a46d1cf19b (diff)
downloadlwn-099f98c8a1f13501a98afbfff4756395a610581c.tar.gz
lwn-099f98c8a1f13501a98afbfff4756395a610581c.zip
sched: print the sd->level in sched_domain_debug code
While printing out the visual representation of the sched-domains, print the level (MC, SMT, CPU, NODE, ... ) of each of the sched_domains. Credit: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Gautham R Shenoy <ego@in.ibm.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/sched.c')
-rw-r--r--kernel/sched.c25
1 files changed, 24 insertions, 1 deletions
diff --git a/kernel/sched.c b/kernel/sched.c
index ef4e25604bbe..dc0be113f41d 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -6197,6 +6197,28 @@ void __init migration_init(void)
#ifdef CONFIG_SCHED_DEBUG
+static inline const char *sd_level_to_string(enum sched_domain_level lvl)
+{
+ switch (lvl) {
+ case SD_LV_NONE:
+ return "NONE";
+ case SD_LV_SIBLING:
+ return "SIBLING";
+ case SD_LV_MC:
+ return "MC";
+ case SD_LV_CPU:
+ return "CPU";
+ case SD_LV_NODE:
+ return "NODE";
+ case SD_LV_ALLNODES:
+ return "ALLNODES";
+ case SD_LV_MAX:
+ return "MAX";
+
+ }
+ return "MAX";
+}
+
static int sched_domain_debug_one(struct sched_domain *sd, int cpu, int level,
cpumask_t *groupmask)
{
@@ -6216,7 +6238,8 @@ static int sched_domain_debug_one(struct sched_domain *sd, int cpu, int level,
return -1;
}
- printk(KERN_CONT "span %s\n", str);
+ printk(KERN_CONT "span %s level %s\n",
+ str, sd_level_to_string(sd->level));
if (!cpu_isset(cpu, sd->span)) {
printk(KERN_ERR "ERROR: domain->span does not contain "