diff options
Diffstat (limited to 'kernel/sched/core.c')
-rw-r--r-- | kernel/sched/core.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index f12225f26b70..091e089063be 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c | |||
@@ -5851,11 +5851,14 @@ void __init sched_init_smp(void) | |||
5851 | /* | 5851 | /* |
5852 | * There's no userspace yet to cause hotplug operations; hence all the | 5852 | * There's no userspace yet to cause hotplug operations; hence all the |
5853 | * CPU masks are stable and all blatant races in the below code cannot | 5853 | * CPU masks are stable and all blatant races in the below code cannot |
5854 | * happen. | 5854 | * happen. The hotplug lock is nevertheless taken to satisfy lockdep, |
5855 | * but there won't be any contention on it. | ||
5855 | */ | 5856 | */ |
5857 | cpus_read_lock(); | ||
5856 | mutex_lock(&sched_domains_mutex); | 5858 | mutex_lock(&sched_domains_mutex); |
5857 | sched_init_domains(cpu_active_mask); | 5859 | sched_init_domains(cpu_active_mask); |
5858 | mutex_unlock(&sched_domains_mutex); | 5860 | mutex_unlock(&sched_domains_mutex); |
5861 | cpus_read_unlock(); | ||
5859 | 5862 | ||
5860 | /* Move init over to a non-isolated CPU */ | 5863 | /* Move init over to a non-isolated CPU */ |
5861 | if (set_cpus_allowed_ptr(current, housekeeping_cpumask(HK_FLAG_DOMAIN)) < 0) | 5864 | if (set_cpus_allowed_ptr(current, housekeeping_cpumask(HK_FLAG_DOMAIN)) < 0) |