提交 446f713b 编写于 作者: A Andi Kleen 提交者: Andi Kleen

[PATCH] unwinder: always use unlocked module list access in unwinder 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: NAndi Kleen <ak@suse.de>
上级 e2124bb8
......@@ -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 \
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册