|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [Patch][0/2]implement dump_execution_state() on ia64
On 27/3/08 17:22, "Akio Takebe" <takebe_akio@xxxxxxxxxxxxxx> wrote:
>> There is already a function which does what you want (i.e., takes a
>> cpu_user_regs pointer) -- it's called show_execution_state().
>>
>> On x86 we implement dump_execution_state() by forcing an exception (by
>> executing an invalid opcode) and dumping the calltrace from within the
>> exception handler. This works because the exception handler has a
>> cpu_user_regs pointer and hence can call show_execution_state(). We use the
>> same trick for handling BUG() and ASSERT(). The code concerned is in
>> arch/x86/traps.c:do_invalid_op().
> On x86, does "xm debug-key d" make system hang?
> Or it just uses the exception handler, not hangup?
It works fine. It uses dump_execution_state(), as you have seen when you
modified it, and hence it does indeed force an exception on each CPU in
turn, and the exception handler dumps the cpu_user_regs (also known as
'pt_regs' in ia64) pointer that it receives.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|