Inappropriate locking in sched_init_smp. -ck --- kernel/sched/bfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-3.15-bfs/kernel/sched/bfs.c =================================================================== --- linux-3.15-bfs.orig/kernel/sched/bfs.c 2014-07-15 16:21:27.665356078 +1000 +++ linux-3.15-bfs/kernel/sched/bfs.c 2014-07-15 16:24:49.458337400 +1000 @@ -6732,6 +6732,7 @@ void __init sched_init_smp(void) cpumask_andnot(non_isolated_cpus, cpu_possible_mask, cpu_isolated_map); if (cpumask_empty(non_isolated_cpus)) cpumask_set_cpu(smp_processor_id(), non_isolated_cpus); + mutex_unlock(&sched_domains_mutex); hotcpu_notifier(sched_domains_numa_masks_update, CPU_PRI_SCHED_ACTIVE); hotcpu_notifier(cpuset_cpu_active, CPU_PRI_CPUSET_ACTIVE); @@ -6786,7 +6787,6 @@ void __init sched_init_smp(void) #endif } grq_unlock_irq(); - mutex_unlock(&sched_domains_mutex); for_each_online_cpu(cpu) { struct rq *rq = cpu_rq(cpu);