aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/symbols.c
Commit message (Collapse)AuthorAgeFilesLines
* x86: slightly improve stack trace on debug buildsJan Beulich2012-09-261-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As was rather obvious from crashes recently happening in stage testing, the debug hypervisor, in that special case, has a drawback compared to the non-debug one: When a call through a bad pointer happens, there's no frame, and the top level (and frequently most important for analysis) stack entry would get skipped: (XEN) ----[ Xen-4.3-unstable x86_64 debug=y Not tainted ]---- (XEN) CPU: 1 (XEN) RIP: e008:[<0000000000000000>] ??? (XEN) RFLAGS: 0000000000010046 CONTEXT: hypervisor (XEN) rax: 0000000000000008 rbx: 0000000000000001 rcx: 0000000000000003 (XEN) rdx: 0000003db54eb700 rsi: 7fffffffffffffff rdi: 0000000000000001 (XEN) rbp: ffff8302357e7ee0 rsp: ffff8302357e7e58 r8: 0000000000000000 (XEN) r9: 000000000000003e r10: ffff8302357e7f18 r11: ffff8302357e7f18 (XEN) r12: ffff8302357ee340 r13: ffff82c480263980 r14: ffff8302357ee3d0 (XEN) r15: 0000000000000001 cr0: 000000008005003b cr4: 00000000000026f0 (XEN) cr3: 00000000bf473000 cr2: 0000000000000000 (XEN) ds: 0000 es: 0000 fs: 0000 gs: 0000 ss: 0000 cs: e008 (XEN) Xen stack trace from rsp=ffff8302357e7e58: (XEN) ffff82c4801a3d05 ffff8302357eca70 0000000800000020 ffff82c4802ead60 (XEN) 0000000000000001 ffff8302357e7ea0 ffff82c48016bf07 0000000000000000 (XEN) 0000000000000000 ffff8302357e7ee0 fffff830fffff830 0000000000000046 (XEN) ffff8302357e7f18 ffff82c480263980 ffff8302357e7f18 0000000000000000 (XEN) 0000000000000000 ffff8302357e7f10 ffff82c48015c2be 8302357dc0000fff ... (XEN) Xen call trace: (XEN) [<0000000000000000>] ??? (XEN) [<ffff82c48015c2be>] idle_loop+0x6c/0x7a (XEN) (XEN) Pagetable walk from 0000000000000000: Since the bad pointer is being printed anyway (as part of the register state), replace it with the top of stack value in such a case. With the introduction of is_active_kernel_text(), use it also at the (few) other suitable places (I intentionally didn't replace the use in xen/arch/arm/mm.c - while it would be functionally correct, the dependency on system_state wouldn't be from an abstract perspective). Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
* x86-64: reduce symbol table sizeKeir Fraser2009-07-131-14/+20
| | | | | | | | | | | | | | With all of Xen's symbols sitting within a 2Gb range on x86-64, they can be referred to by the kallsyms-like offset table using 4- instead of 8-byte slots. The marker table can use 4-byte slots in all cases, just like the table entry counts can (though that's only a minor improvement). If ia64's PERCPU_ADDR got moved down to (KERNEL_START + 2Gb - PERCPU_PAGE_SIZE), it could also utilize the more compact form. Signed-off-by: Jan Beulich <jbeulich@novell.com>
* xen x86: Fix double-fault handler stack overflow.Keir Fraser2007-03-311-3/+9
| | | | | | | | | | 1. Shrink stack frame for __print_symbol() by introducing a lock and making the big arrays static. 2. Double the size of the double-fault stack. Also fix the show_stack_overflow function. Signed-off-by: Keir Fraser <keir@xensource.com>
* Replace sprintf with snprintf and strncpy with strlcpy.kfraser@localhost.localdomain2007-01-291-4/+6
| | | | | | | | There are various cases where no NULL-terminated strings are guaranteed and eventual possible overflows. This patch fixes them. From: Christoph Egger <Christoph.Egger@amd.com> Signed-off-by: Keir Fraser <keir@xensource.com>
* [XEN] Remove bogus BUG_ON() which breaks the build with gcc 4.2.0.kfraser@localhost.localdomain2007-01-101-3/+0
| | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* [XEN] Make labels _start,_end,_stext,_etext,_sinittext,_einittext generic.kaf24@localhost.localdomain2007-01-031-2/+4
| | | | | | Also sync the tools/symbol.c symbol table generator with Linux. Make section names generic (e.e.g, .init.text, .init.data, ...). Signed-off-by: Keir Fraser <keir@xensource.com>
* [XEN] Remove weak-extern definitions from symbols.c.kfraser@localhost.localdomain2006-09-281-7/+6
| | | | | | Instead we have an explicit set of dummy symbol definitions for the inital link of the Xen image. Signed-off-by: Keir Fraser <keir@xensource.com>
* Port kallsyms to Xen, as 'symbols'.kaf24@firebug.cl.cam.ac.uk2005-07-221-0/+158
Signed-off-by: Keir Fraser <keir@xensource.com>