Messages in this thread | | | Date | Fri, 21 Mar 2014 15:23:03 +1100 | From | Stephen Rothwell <> | Subject | linux-next: manual merge of the tip tree with Linus' tree |
| |
Hi all,
Today's linux-next merge of the tip tree got a conflict in arch/x86/kernel/cpu/perf_event_intel_uncore.c between commit 2c666adacc9e ("x86, intel, uncore: Fix CPU hotplug callback registration") from Linus' tree and commit 411cf180fa00 ("perf/x86/uncore: fix initialization of cpumask") from the tip tree.
I fixed it up (maybe incorrectly - see below) and can carry the fix as necessary (no action is required).
-- Cheers, Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/x86/kernel/cpu/perf_event_intel_uncore.c index 28922f62eb29,bd2253d40cff..000000000000 --- a/arch/x86/kernel/cpu/perf_event_intel_uncore.c +++ b/arch/x86/kernel/cpu/perf_event_intel_uncore.c @@@ -3868,6 -4234,41 +4234,41 @@@ static int __init uncore_pmus_register( return 0; } + static void __init uncore_cpumask_init(void) + { + int cpu; + + /* + * ony invoke once from msr or pci init code + */ + if (!cpumask_empty(&uncore_cpu_mask)) + return; + - get_online_cpus(); ++ cpu_notifier_register_begin(); + + for_each_online_cpu(cpu) { + int i, phys_id = topology_physical_package_id(cpu); + + for_each_cpu(i, &uncore_cpu_mask) { + if (phys_id == topology_physical_package_id(i)) { + phys_id = -1; + break; + } + } + if (phys_id < 0) + continue; + + uncore_cpu_prepare(cpu, phys_id); + uncore_event_init_cpu(cpu); + } + on_each_cpu(uncore_cpu_setup, NULL, 1); + - register_cpu_notifier(&uncore_cpu_nb); ++ __register_cpu_notifier(&uncore_cpu_nb); + - put_online_cpus(); ++ cpu_notifier_register_done(); + } + + static int __init intel_uncore_init(void) { int ret; [unhandled content-type:application/pgp-signature] | |