Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4eb86765 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge branch 'smp/hotplug' into sched/core, to resolve conflicts



Conflicts:
	kernel/sched/core.c

Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents eb60b3e5 e5ef27d0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -565,7 +565,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *tidle)
		smp_ops->give_timebase();

	/* Wait until cpu puts itself in the online & active maps */
	while (!cpu_online(cpu) || !cpu_active(cpu))
	while (!cpu_online(cpu))
		cpu_relax();

	return 0;
+1 −1
Original line number Diff line number Diff line
@@ -832,7 +832,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *tidle)
	pcpu_attach_task(pcpu, tidle);
	pcpu_start_fn(pcpu, smp_start_secondary, NULL);
	/* Wait until cpu puts itself in the online & active maps */
	while (!cpu_online(cpu) || !cpu_active(cpu))
	while (!cpu_online(cpu))
		cpu_relax();
	return 0;
}
+0 −18
Original line number Diff line number Diff line
@@ -59,25 +59,7 @@ struct notifier_block;
 * CPU notifier priorities.
 */
enum {
	/*
	 * SCHED_ACTIVE marks a cpu which is coming up active during
	 * CPU_ONLINE and CPU_DOWN_FAILED and must be the first
	 * notifier.  CPUSET_ACTIVE adjusts cpuset according to
	 * cpu_active mask right after SCHED_ACTIVE.  During
	 * CPU_DOWN_PREPARE, SCHED_INACTIVE and CPUSET_INACTIVE are
	 * ordered in the similar way.
	 *
	 * This ordering guarantees consistent cpu_active mask and
	 * migration behavior to all cpu notifiers.
	 */
	CPU_PRI_SCHED_ACTIVE	= INT_MAX,
	CPU_PRI_CPUSET_ACTIVE	= INT_MAX - 1,
	CPU_PRI_SCHED_INACTIVE	= INT_MIN + 1,
	CPU_PRI_CPUSET_INACTIVE	= INT_MIN,

	/* migration should happen before other stuff but after perf */
	CPU_PRI_PERF		= 20,
	CPU_PRI_MIGRATION	= 10,

	/* bring up workqueues before normal notifiers and down after */
	CPU_PRI_WORKQUEUE_UP	= 5,
+2 −0
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@ enum cpuhp_state {
	CPUHP_BRINGUP_CPU,
	CPUHP_AP_IDLE_DEAD,
	CPUHP_AP_OFFLINE,
	CPUHP_AP_SCHED_STARTING,
	CPUHP_AP_NOTIFY_STARTING,
	CPUHP_AP_ONLINE,
	CPUHP_TEARDOWN_CPU,
@@ -16,6 +17,7 @@ enum cpuhp_state {
	CPUHP_AP_NOTIFY_ONLINE,
	CPUHP_AP_ONLINE_DYN,
	CPUHP_AP_ONLINE_DYN_END		= CPUHP_AP_ONLINE_DYN + 30,
	CPUHP_AP_ACTIVE,
	CPUHP_ONLINE,
};

+2 −4
Original line number Diff line number Diff line
@@ -743,13 +743,11 @@ set_cpu_present(unsigned int cpu, bool present)
static inline void
set_cpu_online(unsigned int cpu, bool online)
{
	if (online) {
	if (online)
		cpumask_set_cpu(cpu, &__cpu_online_mask);
		cpumask_set_cpu(cpu, &__cpu_active_mask);
	} else {
	else
		cpumask_clear_cpu(cpu, &__cpu_online_mask);
}
}

static inline void
set_cpu_active(unsigned int cpu, bool active)
Loading