diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-28 20:19:27 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-28 20:19:28 -0400 |
commit | 532bfc851a7475fb6a36c1e953aa395798a7cca7 (patch) | |
tree | a7892e5a31330dd59f31959efbe9fda1803784fd /arch/ia64/kernel/smpboot.c | |
parent | 0195c00244dc2e9f522475868fa278c473ba7339 (diff) | |
parent | 8da00edc1069f01c34510fa405dc15d96c090a3f (diff) |
Merge branch 'akpm' (Andrew's patch-bomb)
Merge third batch of patches from Andrew Morton:
- Some MM stragglers
- core SMP library cleanups (on_each_cpu_mask)
- Some IPI optimisations
- kexec
- kdump
- IPMI
- the radix-tree iterator work
- various other misc bits.
"That'll do for -rc1. I still have ~10 patches for 3.4, will send
those along when they've baked a little more."
* emailed from Andrew Morton <akpm@linux-foundation.org>: (35 commits)
backlight: fix typo in tosa_lcd.c
crc32: add help text for the algorithm select option
mm: move hugepage test examples to tools/testing/selftests/vm
mm: move slabinfo.c to tools/vm
mm: move page-types.c from Documentation to tools/vm
selftests/Makefile: make `run_tests' depend on `all'
selftests: launch individual selftests from the main Makefile
radix-tree: use iterators in find_get_pages* functions
radix-tree: rewrite gang lookup using iterator
radix-tree: introduce bit-optimized iterator
fs/proc/namespaces.c: prevent crash when ns_entries[] is empty
nbd: rename the nbd_device variable from lo to nbd
pidns: add reboot_pid_ns() to handle the reboot syscall
sysctl: use bitmap library functions
ipmi: use locks on watchdog timeout set on reboot
ipmi: simplify locking
ipmi: fix message handling during panics
ipmi: use a tasklet for handling received messages
ipmi: increase KCS timeouts
ipmi: decrease the IPMI message transaction time in interrupt mode
...
Diffstat (limited to 'arch/ia64/kernel/smpboot.c')
-rw-r--r-- | arch/ia64/kernel/smpboot.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c index fb7927be75c4..796f6a5b966a 100644 --- a/arch/ia64/kernel/smpboot.c +++ b/arch/ia64/kernel/smpboot.c | |||
@@ -400,7 +400,7 @@ smp_callin (void) | |||
400 | /* Setup the per cpu irq handling data structures */ | 400 | /* Setup the per cpu irq handling data structures */ |
401 | __setup_vector_irq(cpuid); | 401 | __setup_vector_irq(cpuid); |
402 | notify_cpu_starting(cpuid); | 402 | notify_cpu_starting(cpuid); |
403 | cpu_set(cpuid, cpu_online_map); | 403 | set_cpu_online(cpuid, true); |
404 | per_cpu(cpu_state, cpuid) = CPU_ONLINE; | 404 | per_cpu(cpu_state, cpuid) = CPU_ONLINE; |
405 | spin_unlock(&vector_lock); | 405 | spin_unlock(&vector_lock); |
406 | ipi_call_unlock_irq(); | 406 | ipi_call_unlock_irq(); |
@@ -547,7 +547,7 @@ do_rest: | |||
547 | if (!cpu_isset(cpu, cpu_callin_map)) { | 547 | if (!cpu_isset(cpu, cpu_callin_map)) { |
548 | printk(KERN_ERR "Processor 0x%x/0x%x is stuck.\n", cpu, sapicid); | 548 | printk(KERN_ERR "Processor 0x%x/0x%x is stuck.\n", cpu, sapicid); |
549 | ia64_cpu_to_sapicid[cpu] = -1; | 549 | ia64_cpu_to_sapicid[cpu] = -1; |
550 | cpu_clear(cpu, cpu_online_map); /* was set in smp_callin() */ | 550 | set_cpu_online(cpu, false); /* was set in smp_callin() */ |
551 | return -EINVAL; | 551 | return -EINVAL; |
552 | } | 552 | } |
553 | return 0; | 553 | return 0; |
@@ -577,8 +577,7 @@ smp_build_cpu_map (void) | |||
577 | } | 577 | } |
578 | 578 | ||
579 | ia64_cpu_to_sapicid[0] = boot_cpu_id; | 579 | ia64_cpu_to_sapicid[0] = boot_cpu_id; |
580 | cpus_clear(cpu_present_map); | 580 | init_cpu_present(cpumask_of(0)); |
581 | set_cpu_present(0, true); | ||
582 | set_cpu_possible(0, true); | 581 | set_cpu_possible(0, true); |
583 | for (cpu = 1, i = 0; i < smp_boot_data.cpu_count; i++) { | 582 | for (cpu = 1, i = 0; i < smp_boot_data.cpu_count; i++) { |
584 | sapicid = smp_boot_data.cpu_phys_id[i]; | 583 | sapicid = smp_boot_data.cpu_phys_id[i]; |
@@ -605,10 +604,6 @@ smp_prepare_cpus (unsigned int max_cpus) | |||
605 | 604 | ||
606 | smp_setup_percpu_timer(); | 605 | smp_setup_percpu_timer(); |
607 | 606 | ||
608 | /* | ||
609 | * We have the boot CPU online for sure. | ||
610 | */ | ||
611 | cpu_set(0, cpu_online_map); | ||
612 | cpu_set(0, cpu_callin_map); | 607 | cpu_set(0, cpu_callin_map); |
613 | 608 | ||
614 | local_cpu_data->loops_per_jiffy = loops_per_jiffy; | 609 | local_cpu_data->loops_per_jiffy = loops_per_jiffy; |
@@ -632,7 +627,7 @@ smp_prepare_cpus (unsigned int max_cpus) | |||
632 | 627 | ||
633 | void __devinit smp_prepare_boot_cpu(void) | 628 | void __devinit smp_prepare_boot_cpu(void) |
634 | { | 629 | { |
635 | cpu_set(smp_processor_id(), cpu_online_map); | 630 | set_cpu_online(smp_processor_id(), true); |
636 | cpu_set(smp_processor_id(), cpu_callin_map); | 631 | cpu_set(smp_processor_id(), cpu_callin_map); |
637 | set_numa_node(cpu_to_node_map[smp_processor_id()]); | 632 | set_numa_node(cpu_to_node_map[smp_processor_id()]); |
638 | per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; | 633 | per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; |
@@ -689,7 +684,7 @@ int migrate_platform_irqs(unsigned int cpu) | |||
689 | /* | 684 | /* |
690 | * Now re-target the CPEI to a different processor | 685 | * Now re-target the CPEI to a different processor |
691 | */ | 686 | */ |
692 | new_cpei_cpu = any_online_cpu(cpu_online_map); | 687 | new_cpei_cpu = cpumask_any(cpu_online_mask); |
693 | mask = cpumask_of(new_cpei_cpu); | 688 | mask = cpumask_of(new_cpei_cpu); |
694 | set_cpei_target_cpu(new_cpei_cpu); | 689 | set_cpei_target_cpu(new_cpei_cpu); |
695 | data = irq_get_irq_data(ia64_cpe_irq); | 690 | data = irq_get_irq_data(ia64_cpe_irq); |
@@ -731,10 +726,10 @@ int __cpu_disable(void) | |||
731 | return -EBUSY; | 726 | return -EBUSY; |
732 | } | 727 | } |
733 | 728 | ||
734 | cpu_clear(cpu, cpu_online_map); | 729 | set_cpu_online(cpu, false); |
735 | 730 | ||
736 | if (migrate_platform_irqs(cpu)) { | 731 | if (migrate_platform_irqs(cpu)) { |
737 | cpu_set(cpu, cpu_online_map); | 732 | set_cpu_online(cpu, true); |
738 | return -EBUSY; | 733 | return -EBUSY; |
739 | } | 734 | } |
740 | 735 | ||