mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-25 14:13:01 -04:00
cpuset: Fix cpuset_cpus_allowed_fallback(), don't update tsk->rt.nr_cpus_allowed
The rule is, we have to update tsk->rt.nr_cpus_allowed if we change tsk->cpus_allowed. Otherwise RT scheduler may confuse. Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Cc: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/4DD4B3FA.5060901@jp.fujitsu.com Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
1e87623178
commit
1e1b6c511d
5 changed files with 24 additions and 12 deletions
|
|
@ -146,7 +146,7 @@ static inline void cpuset_cpus_allowed(struct task_struct *p,
|
|||
|
||||
static inline int cpuset_cpus_allowed_fallback(struct task_struct *p)
|
||||
{
|
||||
cpumask_copy(&p->cpus_allowed, cpu_possible_mask);
|
||||
do_set_cpus_allowed(p, cpu_possible_mask);
|
||||
return cpumask_any(cpu_active_mask);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1841,9 +1841,16 @@ static inline void rcu_copy_process(struct task_struct *p)
|
|||
#endif
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
extern void do_set_cpus_allowed(struct task_struct *p,
|
||||
const struct cpumask *new_mask);
|
||||
|
||||
extern int set_cpus_allowed_ptr(struct task_struct *p,
|
||||
const struct cpumask *new_mask);
|
||||
#else
|
||||
static inline void do_set_cpus_allowed(struct task_struct *p,
|
||||
const struct cpumask *new_mask)
|
||||
{
|
||||
}
|
||||
static inline int set_cpus_allowed_ptr(struct task_struct *p,
|
||||
const struct cpumask *new_mask)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue