Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1728265 > unrolled thread

[PATCH 0/4] sched: Fix some load-balancer vs hotplug holes

Started byPeter Zijlstra <peterz@infradead.org>
First post2017-09-07 17:20 +0200
Last post2017-09-07 17:20 +0200
Articles 2 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [PATCH 0/4] sched: Fix some load-balancer vs hotplug holes Peter Zijlstra <peterz@infradead.org> - 2017-09-07 17:20 +0200
    [PATCH 4/4] sched/debug: Add debugfs knob for "sched_debug" Peter Zijlstra <peterz@infradead.org> - 2017-09-07 17:20 +0200

#1728265 — [PATCH 0/4] sched: Fix some load-balancer vs hotplug holes

FromPeter Zijlstra <peterz@infradead.org>
Date2017-09-07 17:20 +0200
Subject[PATCH 0/4] sched: Fix some load-balancer vs hotplug holes
Message-ID<un6L0-1Qb-13@gated-at.bofh.it>
Hi

Thomas had some hotplug stress funnies and these appear to cure things. Should
go into this merge window thingy, except the last one, which is fine for later.

The first is an obvious regression and has a Fixes line, the second
looks like a pre-existing hole, but might be made easier to hit,
although I can't readily tell you how.

And while I could readily hit the first hole, I didn't manage to trigger
the second, but Thomas had enough trace data to confirm he could.

[toc] | [next] | [standalone]


#1728266 — [PATCH 4/4] sched/debug: Add debugfs knob for "sched_debug"

FromPeter Zijlstra <peterz@infradead.org>
Date2017-09-07 17:20 +0200
Subject[PATCH 4/4] sched/debug: Add debugfs knob for "sched_debug"
Message-ID<un6L1-1Qb-27@gated-at.bofh.it>
In reply to#1728265
I'm forever late for editing my kernel cmdline, add a runtime knob to
disable the "sched_debug" thing.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
---

--- a/kernel/sched/debug.c
+++ b/kernel/sched/debug.c
@@ -181,11 +181,16 @@ static const struct file_operations sche
 	.release	= single_release,
 };
 
+__read_mostly bool sched_debug_enabled;
+
 static __init int sched_init_debug(void)
 {
 	debugfs_create_file("sched_features", 0644, NULL, NULL,
 			&sched_feat_fops);
 
+	debugfs_create_bool("sched_debug", 0644, NULL,
+			&sched_debug_enabled);
+
 	return 0;
 }
 late_initcall(sched_init_debug);
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
@@ -1954,6 +1954,8 @@ extern struct sched_entity *__pick_first
 extern struct sched_entity *__pick_last_entity(struct cfs_rq *cfs_rq);
 
 #ifdef	CONFIG_SCHED_DEBUG
+extern bool sched_debug_enabled;
+
 extern void print_cfs_stats(struct seq_file *m, int cpu);
 extern void print_rt_stats(struct seq_file *m, int cpu);
 extern void print_dl_stats(struct seq_file *m, int cpu);
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -14,11 +14,9 @@ cpumask_var_t sched_domains_tmpmask2;
 
 #ifdef CONFIG_SCHED_DEBUG
 
-static __read_mostly int sched_debug_enabled;
-
 static int __init sched_debug_setup(char *str)
 {
-	sched_debug_enabled = 1;
+	sched_debug_enabled = true;
 
 	return 0;
 }

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web