diff options
author | Andrew Cooper <andrew.cooper3@citrix.com> | 2013-10-04 12:58:20 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2013-10-04 12:58:20 +0200 |
commit | 8e0da8c07f4f80e14314977a11f738bd74a5b62b (patch) | |
tree | d3452ba8506a6d9bfe12a412489215dbaa24c316 /xen/include/asm-x86/asm_defns.h | |
parent | fe06795e82922f8d8c8910da545ef1215cbb1b8c (diff) | |
download | xen-8e0da8c07f4f80e14314977a11f738bd74a5b62b.tar.gz xen-8e0da8c07f4f80e14314977a11f738bd74a5b62b.tar.bz2 xen-8e0da8c07f4f80e14314977a11f738bd74a5b62b.zip |
x86: Improve information from domain_crash_synchronous
As it currently stands, the string "domain_crash_sync called from entry.S" is
not helpful at identifying why the domain was crashed, and a debug build of
Xen doesn't help the matter
This patch improves the information printed, by pointing to where the crash
decision was made.
Specific improvements include:
* Moving the ascii string "domain_crash_sync called from entry.S\n" away from
some semi-hot code cache lines.
* Moving the printk into C code (especially as this_cpu() is miserable to use
in assembly code)
* Undo the previous confusing situation of having the
domain_crash_synchronous() as a macro in C code, yet a global symbol in
assembly code.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/include/asm-x86/asm_defns.h')
-rw-r--r-- | xen/include/asm-x86/asm_defns.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xen/include/asm-x86/asm_defns.h b/xen/include/asm-x86/asm_defns.h index 25032d55eb..a4601bab32 100644 --- a/xen/include/asm-x86/asm_defns.h +++ b/xen/include/asm-x86/asm_defns.h @@ -35,10 +35,14 @@ void ret_from_intr(void); #ifdef __ASSEMBLY__ #define UNLIKELY_START(cond, tag) \ + .Ldispatch.tag: \ j##cond .Lunlikely.tag; \ .subsection 1; \ .Lunlikely.tag: +#define UNLIKELY_DISPATCH_LABEL(tag) \ + .Ldispatch.tag + #define UNLIKELY_DONE(cond, tag) \ j##cond .Llikely.tag |