aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/x86_64
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2013-08-23 09:19:29 +0200
committerJan Beulich <jbeulich@suse.com>2013-08-23 09:19:29 +0200
commitb5692f2ef9b6fd67c3e7b4d4f2a4bdb1d58100e5 (patch)
treebd47e9cb5456ece3f11655de913b9e766af7ddd3 /xen/include/asm-x86/x86_64
parent08d89ac8bd7f43d897cdffe85b236c71d3408e16 (diff)
downloadxen-b5692f2ef9b6fd67c3e7b4d4f2a4bdb1d58100e5.tar.gz
xen-b5692f2ef9b6fd67c3e7b4d4f2a4bdb1d58100e5.tar.bz2
xen-b5692f2ef9b6fd67c3e7b4d4f2a4bdb1d58100e5.zip
x86: move struct bug_frame instances out of line
Just like Linux did many years ago, move them into a separate (data) section, such that they no longer pollute instruction caches and TLBs. Assertion frames, requiring two pointers to be stored, occupy two slots in the array, with the second slot mimicking a frame the location pointer of which doesn't match any address within .text or .init.text (it effectively points back to the slot itself, which - being in a data section - can't be reached by non-buggy execution). Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/include/asm-x86/x86_64')
-rw-r--r--xen/include/asm-x86/x86_64/bug.h11
1 files changed, 0 insertions, 11 deletions
diff --git a/xen/include/asm-x86/x86_64/bug.h b/xen/include/asm-x86/x86_64/bug.h
deleted file mode 100644
index ecae455b83..0000000000
--- a/xen/include/asm-x86/x86_64/bug.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef __X86_64_BUG_H__
-#define __X86_64_BUG_H__
-
-struct bug_frame_str {
- unsigned char mov;
- signed int str_disp;
-} __attribute__((packed));
-#define bug_str(b, rip) ((const char *)(rip) + (b).str_disp)
-#define BUG_STR(n) "; movl %" #n " - ., %%esp"
-
-#endif /* __X86_64_BUG_H__ */