diff options
author | Con Kolivas <kernel@kolivas.org> | 2016-10-13 11:27:40 +1100 |
---|---|---|
committer | Con Kolivas <kernel@kolivas.org> | 2016-10-13 11:38:11 +1100 |
commit | 916b536ed023950d471e5cf89f92cad4ca7861e3 (patch) | |
tree | 5a80c6aff7132e47e8000680152f730a3d3e6378 | |
parent | 18041630f7851a7b90498e63825204b2ce114a6b (diff) |
Fix suspend and resume.
-rw-r--r-- | kernel/sched/MuQSS.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/sched/MuQSS.c b/kernel/sched/MuQSS.c index 74e0f003ac62..61f2f433c189 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(); |