]> Pileus Git - ~andy/linux/commit
x86-64: Fix CFI annotations for NMI nesting code
authorJan Beulich <JBeulich@suse.com>
Fri, 24 Feb 2012 14:54:37 +0000 (14:54 +0000)
committerSteven Rostedt <rostedt@goodmis.org>
Fri, 24 Feb 2012 19:05:14 +0000 (14:05 -0500)
commit626109130267713cac020515504ec341e47c96f9
treeb399c02e5c46536b3feef94df0ceb14ddf50c03a
parenta38449ef596b345e13a8f9b7d5cd9fedb8fcf921
x86-64: Fix CFI annotations for NMI nesting code

The saving and restoring of %rdx wasn't annotated at all, and the
jumping over sections where state gets partly restored wasn't handled
either.

Further, by folding the pushing of the previous frame in repeat_nmi
into that which so far was immediately preceding restart_nmi (after
moving the restore of %rdx ahead of that, since it doesn't get used
anymore when pushing prior frames), annotations of the replicated
frame creations can be made consistent too.

v2: Fully fold repeat_nmi into the normal code flow (adding a single
    redundant instruction to the "normal" code path), thus retaining
    the special protection of all instructions between repeat_nmi and
    end_repeat_nmi.

Link: http://lkml.kernel.org/r/4F478B630200007800074A31@nat28.tlf.novell.com
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
arch/x86/kernel/entry_64.S