summaryrefslogtreecommitdiff
path: root/kernel/sched/MuQSS.c
diff options
context:
space:
mode:
authorCon Kolivas <kernel@kolivas.org>2016-10-13 11:27:40 +1100
committerCon Kolivas <kernel@kolivas.org>2016-10-13 11:37:48 +1100
commita25a3037d405977198c96a38fdfbb5efe295dba3 (patch)
treec7dcdd5578a22b2bed31a8ad689eae94065444c4 /kernel/sched/MuQSS.c
parent753f3afb05d1dccad72f101ffc4dc1dd4a15a36a (diff)
Fix suspend and resume.
Diffstat (limited to 'kernel/sched/MuQSS.c')
-rw-r--r--kernel/sched/MuQSS.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/sched/MuQSS.c b/kernel/sched/MuQSS.c
index afbd70581e15..2306ab7848c7 100644
--- a/kernel/sched/MuQSS.c
+++ b/kernel/sched/MuQSS.c
@@ -1296,7 +1296,7 @@ void set_task_cpu(struct task_struct *p, unsigned int cpu)
*/
smp_wmb();
- if (task_running(rq, p)) {
+ if (task_running(rq, p) && rq->online) {
/*
* We should only be calling this on a running task if we're
* holding rq lock.
@@ -2033,6 +2033,7 @@ int sched_fork(unsigned long __maybe_unused clone_flags, struct task_struct *p)
*/
/* Should be reset in fork.c but done here for ease of MuQSS patching */
+ p->on_cpu =
p->on_rq =
p->utime =
p->stime =
@@ -2075,7 +2076,6 @@ int sched_fork(unsigned long __maybe_unused clone_flags, struct task_struct *p)
if (unlikely(sched_info_on()))
memset(&p->sched_info, 0, sizeof(p->sched_info));
#endif
- p->on_cpu = 0;
init_task_preempt_count(p);
put_cpu();