aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/cpuset.c17
-rw-r--r--kernel/timer.c2
2 files changed, 18 insertions, 1 deletions
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 21a4e3b2cbda..e0d296c5b302 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -636,6 +636,23 @@ static void update_cpu_domains(struct cpuset *cur)
636 return; 636 return;
637 637
638 /* 638 /*
639 * Hack to avoid 2.6.13 partial node dynamic sched domain bug.
640 * Require the 'cpu_exclusive' cpuset to include all (or none)
641 * of the CPUs on each node, or return w/o changing sched domains.
642 * Remove this hack when dynamic sched domains fixed.
643 */
644 {
645 int i, j;
646
647 for_each_cpu_mask(i, cur->cpus_allowed) {
648 for_each_cpu_mask(j, node_to_cpumask(cpu_to_node(i))) {
649 if (!cpu_isset(j, cur->cpus_allowed))
650 return;
651 }
652 }
653 }
654
655 /*
639 * Get all cpus from parent's cpus_allowed not part of exclusive 656 * Get all cpus from parent's cpus_allowed not part of exclusive
640 * children 657 * children
641 */ 658 */
diff --git a/kernel/timer.c b/kernel/timer.c
index f2a11887a726..5377f40723ff 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -1023,7 +1023,7 @@ asmlinkage long sys_getppid(void)
1023 parent = me->group_leader->real_parent; 1023 parent = me->group_leader->real_parent;
1024 for (;;) { 1024 for (;;) {
1025 pid = parent->tgid; 1025 pid = parent->tgid;
1026#ifdef CONFIG_SMP 1026#if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT)
1027{ 1027{
1028 struct task_struct *old = parent; 1028 struct task_struct *old = parent;
1029 1029