Skip to content

Commit

Permalink
[PATCH] unwinder: always use unlocked module list access in unwinder …
Browse files Browse the repository at this point in the history
…fallback

We're already well protected against module unloads because module
unload uses stop_machine(). The only exception is NMIs, but other
users already risk lockless accesses here.

This avoids some hackery in lockdep and also a potential deadlock

This matches what i386 does.

Signed-off-by: Andi Kleen <ak@suse.de>
  • Loading branch information
Andi Kleen authored and Andi Kleen committed Dec 7, 2006
1 parent e2124bb commit 446f713
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions arch/x86_64/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -317,9 +317,9 @@ void dump_trace(struct task_struct *tsk, struct pt_regs *regs,
#define HANDLE_STACK(cond) \
do while (cond) { \
unsigned long addr = *stack++; \
if (oops_in_progress ? \
__kernel_text_address(addr) : \
kernel_text_address(addr)) { \
/* Use unlocked access here because except for NMIs \
we should be already protected against module unloads */ \
if (__kernel_text_address(addr)) { \
/* \
* If the address is either in the text segment of the \
* kernel, or in the region which contains vmalloc'ed \
Expand Down

0 comments on commit 446f713

Please sign in to comment.