aboutsummaryrefslogtreecommitdiff
path: root/drivers/gator/gator_backtrace.c
diff options
context:
space:
mode:
authorJon Medhurst <tixy@linaro.org>2013-12-19 09:23:06 +0000
committerJon Medhurst <tixy@linaro.org>2013-12-19 09:23:06 +0000
commit34d9769988397a1edf93ad1966c167591ab29e79 (patch)
tree87ff173a35abc79ffb9d3507a9853c3623be9985 /drivers/gator/gator_backtrace.c
parentd369859ea66a29a79162f622a3816c4eb9024940 (diff)
gator: Version 5.17
Signed-off-by: Jon Medhurst <tixy@linaro.org>
Diffstat (limited to 'drivers/gator/gator_backtrace.c')
-rw-r--r--drivers/gator/gator_backtrace.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/gator/gator_backtrace.c b/drivers/gator/gator_backtrace.c
index 0670d6cea9bd..ffacb490194c 100644
--- a/drivers/gator/gator_backtrace.c
+++ b/drivers/gator/gator_backtrace.c
@@ -132,13 +132,21 @@ static int report_trace(struct stackframe *frame, void *d)
// Uncomment the following line to enable kernel stack unwinding within gator, note it can also be defined from the Makefile
// #define GATOR_KERNEL_STACK_UNWINDING
+
+#if (defined(__arm__) || defined(__aarch64__)) && !defined(GATOR_KERNEL_STACK_UNWINDING)
+// Disabled by default
+MODULE_PARM_DESC(kernel_stack_unwinding, "Allow kernel stack unwinding.");
+bool kernel_stack_unwinding = 0;
+module_param(kernel_stack_unwinding, bool, 0644);
+#endif
+
static void kernel_backtrace(int cpu, struct pt_regs *const regs)
{
#if defined(__arm__) || defined(__aarch64__)
#ifdef GATOR_KERNEL_STACK_UNWINDING
int depth = gator_backtrace_depth;
#else
- int depth = 1;
+ int depth = (kernel_stack_unwinding ? gator_backtrace_depth : 1);
#endif
struct stackframe frame;
if (depth == 0)