projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9acd57c
)
powerpc: Fix lockdep IRQ tracing bug
author
Benjamin Herrenschmidt
<
[email protected]
>
Fri, 15 Aug 2008 07:11:31 +0000
(17:11 +1000)
committer
Paul Mackerras
<
[email protected]
>
Mon, 18 Aug 2008 04:22:34 +0000
(14:22 +1000)
A small bogon sneaked into the ppc64 lockdep support. A test is
branching slightly off causing a clobbered register value to
overwrite the irq state under some circumstances.
Signed-off-by: Benjamin Herrenschmidt <
[email protected]
>
Signed-off-by: Paul Mackerras <
[email protected]
>
arch/powerpc/include/asm/irqflags.h
patch
|
blob
|
history
diff --git
a/arch/powerpc/include/asm/irqflags.h
b/arch/powerpc/include/asm/irqflags.h
index 17ba3a881bfdff71d813d2030087b6ab04207ba0..5f68ecfdf516bf85d2094396363849647dae9ebd 100644
(file)
--- a/
arch/powerpc/include/asm/irqflags.h
+++ b/
arch/powerpc/include/asm/irqflags.h
@@
-20,7
+20,7
@@
#define TRACE_ENABLE_INTS bl .trace_hardirqs_on
#define TRACE_DISABLE_INTS bl .trace_hardirqs_off
#define TRACE_AND_RESTORE_IRQ_PARTIAL(en,skip) \
- cmpdi en,
0;
\
+ cmpdi en,
0;
\
bne 95f; \
stb en,PACASOFTIRQEN(r13); \
bl .trace_hardirqs_off; \
@@
-29,7
+29,8
@@
li en,1;
#define TRACE_AND_RESTORE_IRQ(en) \
TRACE_AND_RESTORE_IRQ_PARTIAL(en,96f); \
-96: stb en,PACASOFTIRQEN(r13)
+ stb en,PACASOFTIRQEN(r13); \
+96:
#else
#define TRACE_ENABLE_INTS
#define TRACE_DISABLE_INTS