Commit 2a2bcfa0 authored by Thomas Gleixner's avatar Thomas Gleixner

arm/stacktrace: Remove the pointless ULONG_MAX marker

Terminating the last trace entry with ULONG_MAX is a completely pointless
exercise and none of the consumers can rely on it because it's
inconsistently implemented across architectures. In fact quite some of the
callers remove the entry and adjust stack_trace.nr_entries afterwards.
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Alexander Potapenko <glider@google.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: linux-arm-kernel@lists.infradead.org
Link: https://lkml.kernel.org/r/20190410103643.843075256@linutronix.de
parent c5c27a0a
...@@ -115,8 +115,6 @@ static noinline void __save_stack_trace(struct task_struct *tsk, ...@@ -115,8 +115,6 @@ static noinline void __save_stack_trace(struct task_struct *tsk,
* running on another CPU? For now, ignore it as we * running on another CPU? For now, ignore it as we
* can't guarantee we won't explode. * can't guarantee we won't explode.
*/ */
if (trace->nr_entries < trace->max_entries)
trace->entries[trace->nr_entries++] = ULONG_MAX;
return; return;
#else #else
frame.fp = thread_saved_fp(tsk); frame.fp = thread_saved_fp(tsk);
...@@ -134,8 +132,6 @@ static noinline void __save_stack_trace(struct task_struct *tsk, ...@@ -134,8 +132,6 @@ static noinline void __save_stack_trace(struct task_struct *tsk,
} }
walk_stackframe(&frame, save_trace, &data); walk_stackframe(&frame, save_trace, &data);
if (trace->nr_entries < trace->max_entries)
trace->entries[trace->nr_entries++] = ULONG_MAX;
} }
void save_stack_trace_regs(struct pt_regs *regs, struct stack_trace *trace) void save_stack_trace_regs(struct pt_regs *regs, struct stack_trace *trace)
...@@ -153,8 +149,6 @@ void save_stack_trace_regs(struct pt_regs *regs, struct stack_trace *trace) ...@@ -153,8 +149,6 @@ void save_stack_trace_regs(struct pt_regs *regs, struct stack_trace *trace)
frame.pc = regs->ARM_pc; frame.pc = regs->ARM_pc;
walk_stackframe(&frame, save_trace, &data); walk_stackframe(&frame, save_trace, &data);
if (trace->nr_entries < trace->max_entries)
trace->entries[trace->nr_entries++] = ULONG_MAX;
} }
void save_stack_trace_tsk(struct task_struct *tsk, struct stack_trace *trace) void save_stack_trace_tsk(struct task_struct *tsk, struct stack_trace *trace)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment