diff options
Diffstat (limited to 'arch/powerpc/kernel')
| -rw-r--r-- | arch/powerpc/kernel/idle.c | 6 | ||||
| -rw-r--r-- | arch/powerpc/kernel/kgdb.c | 5 | ||||
| -rw-r--r-- | arch/powerpc/kernel/module_64.c | 19 |
3 files changed, 3 insertions, 27 deletions
diff --git a/arch/powerpc/kernel/idle.c b/arch/powerpc/kernel/idle.c index d308a9f70f1b..31982d05d81a 100644 --- a/arch/powerpc/kernel/idle.c +++ b/arch/powerpc/kernel/idle.c | |||
| @@ -34,11 +34,7 @@ | |||
| 34 | #include <asm/smp.h> | 34 | #include <asm/smp.h> |
| 35 | 35 | ||
| 36 | #ifdef CONFIG_HOTPLUG_CPU | 36 | #ifdef CONFIG_HOTPLUG_CPU |
| 37 | /* this is used for software suspend, and that shuts down | 37 | #define cpu_should_die() cpu_is_offline(smp_processor_id()) |
| 38 | * CPUs even while the system is still booting... */ | ||
| 39 | #define cpu_should_die() (cpu_is_offline(smp_processor_id()) && \ | ||
| 40 | (system_state == SYSTEM_RUNNING \ | ||
| 41 | || system_state == SYSTEM_BOOTING)) | ||
| 42 | #else | 38 | #else |
| 43 | #define cpu_should_die() 0 | 39 | #define cpu_should_die() 0 |
| 44 | #endif | 40 | #endif |
diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c index b4fdf2f2743c..fe8f71dd0b3f 100644 --- a/arch/powerpc/kernel/kgdb.c +++ b/arch/powerpc/kernel/kgdb.c | |||
| @@ -347,9 +347,8 @@ int kgdb_arch_handle_exception(int vector, int signo, int err_code, | |||
| 347 | linux_regs->msr |= MSR_SE; | 347 | linux_regs->msr |= MSR_SE; |
| 348 | #endif | 348 | #endif |
| 349 | kgdb_single_step = 1; | 349 | kgdb_single_step = 1; |
| 350 | if (kgdb_contthread) | 350 | atomic_set(&kgdb_cpu_doing_single_step, |
| 351 | atomic_set(&kgdb_cpu_doing_single_step, | 351 | raw_smp_processor_id()); |
| 352 | raw_smp_processor_id()); | ||
| 353 | } | 352 | } |
| 354 | return 0; | 353 | return 0; |
| 355 | } | 354 | } |
diff --git a/arch/powerpc/kernel/module_64.c b/arch/powerpc/kernel/module_64.c index ad79de272ff3..1af2377e4992 100644 --- a/arch/powerpc/kernel/module_64.c +++ b/arch/powerpc/kernel/module_64.c | |||
| @@ -21,9 +21,7 @@ | |||
| 21 | #include <linux/err.h> | 21 | #include <linux/err.h> |
| 22 | #include <linux/vmalloc.h> | 22 | #include <linux/vmalloc.h> |
| 23 | #include <linux/bug.h> | 23 | #include <linux/bug.h> |
| 24 | #include <linux/uaccess.h> | ||
| 25 | #include <asm/module.h> | 24 | #include <asm/module.h> |
| 26 | #include <asm/sections.h> | ||
| 27 | #include <asm/firmware.h> | 25 | #include <asm/firmware.h> |
| 28 | #include <asm/code-patching.h> | 26 | #include <asm/code-patching.h> |
| 29 | #include <linux/sort.h> | 27 | #include <linux/sort.h> |
| @@ -43,13 +41,6 @@ | |||
| 43 | #define DEBUGP(fmt , ...) | 41 | #define DEBUGP(fmt , ...) |
| 44 | #endif | 42 | #endif |
| 45 | 43 | ||
| 46 | /* There's actually a third entry here, but it's unused */ | ||
| 47 | struct ppc64_opd_entry | ||
| 48 | { | ||
| 49 | unsigned long funcaddr; | ||
| 50 | unsigned long r2; | ||
| 51 | }; | ||
| 52 | |||
| 53 | /* Like PPC32, we need little trampolines to do > 24-bit jumps (into | 44 | /* Like PPC32, we need little trampolines to do > 24-bit jumps (into |
| 54 | the kernel itself). But on PPC64, these need to be used for every | 45 | the kernel itself). But on PPC64, these need to be used for every |
| 55 | jump, actually, to reset r2 (TOC+0x8000). */ | 46 | jump, actually, to reset r2 (TOC+0x8000). */ |
| @@ -452,13 +443,3 @@ int apply_relocate_add(Elf64_Shdr *sechdrs, | |||
| 452 | 443 | ||
| 453 | return 0; | 444 | return 0; |
| 454 | } | 445 | } |
| 455 | |||
| 456 | void *dereference_function_descriptor(void *ptr) | ||
| 457 | { | ||
| 458 | struct ppc64_opd_entry *desc = ptr; | ||
| 459 | void *p; | ||
| 460 | |||
| 461 | if (!probe_kernel_address(&desc->funcaddr, p)) | ||
| 462 | ptr = p; | ||
| 463 | return ptr; | ||
| 464 | } | ||
