Android内核转储

时间:2017-02-28 11:08:19

标签: android linux-kernel

我忙于Android中的内核(至少接近Linux)。

我理解有时用来跟踪事物的dump_stack()的输出。但是当出现内核错误时,转储也会出现,但转储之间还有一行Exception stack

为了好奇,我添加了一个访问NULL的函数。当引发NULL解除引用错误时,这是​​我得到的转储的一部分:

[<c0055f84>] (unwind_backtrace+0x0/0x138) from [<c0693008>] (panic+0x74/0x194)
[<c0693008>] (panic+0x74/0x194) from [<c0052470>] (die+0x218/0x284)
[<c0052470>] (die+0x218/0x284) from [<c0692df8>] (__do_kernel_fault.part.3+0x60/0x84)
[<c0692df8>] (__do_kernel_fault.part.3+0x60/0x84) from [<c0059d30>] (do_page_fault+0x2cc/0x334)
[<c0059d30>] (do_page_fault+0x2cc/0x334) from [<c0048410>] (do_DataAbort+0x34/0x9c)
[<c0048410>] (do_DataAbort+0x34/0x9c) from [<c004e2d0>] (__dabt_svc+0x70/0xa0)
Exception stack(0xe6901ed8 to 0xe6901f20)
1ec0:                                                       00000001 00000003
1ee0: c081ddf8 00000004 410afc4c 00000005 00000004 c09c9218 e63f6800 e6900000
1f00: 00000000 400a5404 c081ddfb e6901f20 c0321ad0 c0321ad4 20000013 ffffffff
[<c004e2d0>] (__dabt_svc+0x70/0xa0) from [<c0321ad4>] (access_null+0x38/0x30c)
[<c0321ad4>] (access_null+0x38/0x30c) from [<c017692c>] (function_that_calls_access_null+0x50/0x94)

access_null()执行恶意访问。但异常堆栈不在此功能。

这里发生了什么?我可以对异常堆栈部分中的数据做些什么?

0 个答案:

没有答案