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:
021ef05
)
x86-64: Fix unwind annotations in recent NMI changes
author
Jan Beulich
<
[email protected]
>
Thu, 24 Jan 2013 09:27:31 +0000
(09:27 +0000)
committer
Ingo Molnar
<
[email protected]
>
Thu, 24 Jan 2013 09:56:32 +0000
(10:56 +0100)
While in one case a plain annotation is necessary, in the other
case the stack adjustment can simply be folded into the
immediately preceding RESTORE_ALL, thus getting the correct
annotation for free.
Signed-off-by: Jan Beulich <
[email protected]
>
Cc: Steven Rostedt <
[email protected]
>
Cc: Linus Torvalds <
[email protected]
>
Cc: Alexander van Heukelum <
[email protected]
>
Link:
http://lkml.kernel.org/r/
[email protected]
Signed-off-by: Ingo Molnar <
[email protected]
>
arch/x86/kernel/entry_64.S
patch
|
blob
|
history
diff --git
a/arch/x86/kernel/entry_64.S
b/arch/x86/kernel/entry_64.S
index 07a7a04529bc5d7849ffc21b79819edd7b23ffd9..cb3c591339aa3d4242e420d181b83f3a62ced2c3 100644
(file)
--- a/
arch/x86/kernel/entry_64.S
+++ b/
arch/x86/kernel/entry_64.S
@@
-1781,6
+1781,7
@@
first_nmi:
* Leave room for the "copied" frame
*/
subq $(5*8), %rsp
+ CFI_ADJUST_CFA_OFFSET 5*8
/* Copy the stack frame to the Saved frame */
.rept 5
@@
-1863,10
+1864,8
@@
end_repeat_nmi:
nmi_swapgs:
SWAPGS_UNSAFE_STACK
nmi_restore:
- RESTORE_ALL 8
-
- /* Pop the extra iret frame */
- addq $(5*8), %rsp
+ /* Pop the extra iret frame at once */
+ RESTORE_ALL 6*8
/* Clear the NMI executing stack variable */
movq $0, 5*8(%rsp)