|
@@ -218,6 +218,9 @@ show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs,
|
|
|
unsigned long *stack;
|
|
|
int i;
|
|
|
|
|
|
+ if (!try_get_task_stack(task))
|
|
|
+ return;
|
|
|
+
|
|
|
irq_stack_end = (unsigned long *)this_cpu_read(irq_stack_ptr);
|
|
|
irq_stack = irq_stack_end - (IRQ_STACK_SIZE / sizeof(long));
|
|
|
|
|
@@ -253,6 +256,8 @@ show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs,
|
|
|
|
|
|
pr_cont("\n");
|
|
|
show_trace_log_lvl(task, regs, sp, bp, log_lvl);
|
|
|
+
|
|
|
+ put_task_stack(task);
|
|
|
}
|
|
|
|
|
|
void show_regs(struct pt_regs *regs)
|