aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Medhurst (Tixy) <tixy@linaro.org>2014-06-30 09:47:01 +0100
committerJohn Stultz <john.stultz@linaro.org>2014-06-30 09:02:26 -0700
commit2561926d0fc3508d8a931055d2521b8907373969 (patch)
treedbf926f5637d802fa22ec77b5b820f153c20dde4
parentf9a6a73c92b73f1bdd9ed948b79a810ee7de9917 (diff)
I've created the patch below to get Android code compiling OK on 3.16-rc3. This doesn't update Android patches 'properly' to support the new feature, but nothing is broken as far as I can tell. Also, coincidentally, I notice that 3.16 also deprecated an API that the Android patches us in the same backtrace functions... arch/arm/kernel/smp.c: In function 'smp_send_all_cpu_backtrace': arch/arm/kernel/smp.c:583:2: warning: 'smp_mb__after_clear_bit' is deprecated (declared at include/linux/bitops.h:48) [-Wdeprecated-declarations] smp_mb__after_clear_bit(); Commit f3aca3d095 (nmi: provide the option to issue an NMI back trace to every cpu but current) added a bool to some cpu_backtrace functions so we need to add them too to the ARM implementation of these functions added by the Android patches. Note, the functions aren't updated to actually make proper use of this extra arguments. Signed-off-by: Jon Medhurst <tixy@linaro.org> Signed-off-by: John Stultz <john.stultz@linaro.org>
-rw-r--r--arch/arm/include/asm/irq.h2
-rw-r--r--arch/arm/include/asm/smp.h2
-rw-r--r--arch/arm/kernel/process.c4
-rw-r--r--arch/arm/kernel/smp.c2
4 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm/include/asm/irq.h b/arch/arm/include/asm/irq.h
index 809203a4b71b..b995e6a18a3b 100644
--- a/arch/arm/include/asm/irq.h
+++ b/arch/arm/include/asm/irq.h
@@ -35,7 +35,7 @@ extern void (*handle_arch_irq)(struct pt_regs *);
extern void set_handle_irq(void (*handle_irq)(struct pt_regs *));
#endif
-void arch_trigger_all_cpu_backtrace(void);
+void arch_trigger_all_cpu_backtrace(bool);
#define arch_trigger_all_cpu_backtrace arch_trigger_all_cpu_backtrace
#endif
diff --git a/arch/arm/include/asm/smp.h b/arch/arm/include/asm/smp.h
index 39a10245a337..99b60fc42c3e 100644
--- a/arch/arm/include/asm/smp.h
+++ b/arch/arm/include/asm/smp.h
@@ -87,7 +87,7 @@ extern void arch_send_wakeup_ipi_mask(const struct cpumask *mask);
extern int register_ipi_completion(struct completion *completion, int cpu);
-extern void smp_send_all_cpu_backtrace(void);
+extern void smp_send_all_cpu_backtrace(bool);
struct smp_operations {
#ifdef CONFIG_SMP
diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
index f32e5bdbc976..3668e25bb292 100644
--- a/arch/arm/kernel/process.c
+++ b/arch/arm/kernel/process.c
@@ -61,9 +61,9 @@ static const char *isa_modes[] __maybe_unused = {
};
#ifdef CONFIG_SMP
-void arch_trigger_all_cpu_backtrace(void)
+void arch_trigger_all_cpu_backtrace(bool include_self)
{
- smp_send_all_cpu_backtrace();
+ smp_send_all_cpu_backtrace(include_self);
}
#else
void arch_trigger_all_cpu_backtrace(void)
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index c532d098d27b..704bbd897943 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -551,7 +551,7 @@ static DEFINE_RAW_SPINLOCK(backtrace_lock);
/* "in progress" flag of arch_trigger_all_cpu_backtrace */
static unsigned long backtrace_flag;
-void smp_send_all_cpu_backtrace(void)
+void smp_send_all_cpu_backtrace(bool include_self)
{
unsigned int this_cpu = smp_processor_id();
int i;