Skip to content

Commit

Permalink
Revert "x86: Fix __get_wchan() for !STACKTRACE"
Browse files Browse the repository at this point in the history
This reverts commit e1ff40b which is
commit 5d1ceb3 upstream.

It has been reported to be causing problems, and is being reworked
upstream and has been dropped from the current 5.15.y stable queue until
it gets resolved.

Reported-by: Chris Rankin <rankincj@gmail.com>
Reported-by: Thorsten Leemhuis <linux@leemhuis.info>
Link: https://lore.kernel.org/r/ed000478-2a60-0066-c337-a04bffc112b1@leemhuis.info
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Kees Cook <keescook@chromium.org>
Cc: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Greg Kroah-Hartman committed Nov 18, 2021
1 parent 0e62c60 commit b51c1a5
Showing 1 changed file with 3 additions and 14 deletions.
17 changes: 3 additions & 14 deletions arch/x86/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
#include <asm/io_bitmap.h>
#include <asm/proto.h>
#include <asm/frame.h>
#include <asm/unwind.h>

#include "process.h"

Expand Down Expand Up @@ -946,20 +945,10 @@ unsigned long arch_randomize_brk(struct mm_struct *mm)
*/
unsigned long __get_wchan(struct task_struct *p)
{
struct unwind_state state;
unsigned long addr = 0;
unsigned long entry = 0;

for (unwind_start(&state, p, NULL, NULL); !unwind_done(&state);
unwind_next_frame(&state)) {
addr = unwind_get_return_address(&state);
if (!addr)
break;
if (in_sched_functions(addr))
continue;
break;
}

return addr;
stack_trace_save_tsk(p, &entry, 1, 0);
return entry;
}

long do_arch_prctl_common(struct task_struct *task, int option,
Expand Down

0 comments on commit b51c1a5

Please sign in to comment.