[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v6 13/24] x86, xsplice: Print payload's symbol name and payload name in backtraces
On 07/04/16 04:49, Konrad Rzeszutek Wilk wrote: > From: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx> > > Naturally the backtrace is presented when an instruction > hits an bug_frame or %p is used. > > The payloads do not support bug_frames yet - however the functions > the payloads call could hit an BUG() or WARN(). > > The traps.c has logic to scan for it this - and eventually it will > find the correct bug_frame and the walk the stack using %p to print > the backtrace. For %p and symbols to print a string - the > 'is_active_kernel_text' is consulted which uses an 'struct virtual_region'. > > Therefore we register our start->end addresses so that > 'is_active_kernel_text' will include our payload address. > > We also register our symbol lookup table function so that it can > scan the list of payloads and retrieve the correct name. > > Lastly we change vsprintf to take into account s and namebuf. > For core code they are the same, but for payloads they are different. > This gets us: > > Xen call trace: > [<ffff82d080a00041>] revert_hook+0x31/0x35 [xen_hello_world] > [<ffff82d0801431bd>] xsplice.c#revert_payload+0x86/0xc6 > [<ffff82d080143502>] check_for_xsplice_work+0x233/0x3cd > [<ffff82d08017a0b2>] domain.c#continue_idle_domain+0x9/0x1f > > Which is great if payloads have similar or same symbol names. > > Signed-off-by: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx> > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |