crash-stack: unwinding by frame pointer on aarch64 07/96907/2
authorAdrian Szyndela <adrian.s@samsung.com>
Wed, 7 Sep 2016 09:46:01 +0000 (11:46 +0200)
committerŁukasz Stelmach <l.stelmach@samsung.com>
Thu, 8 Dec 2016 11:25:06 +0000 (12:25 +0100)
commitb387718c185590e39e2ea15665c65db2d3e23fdc
treefb774371df1ddefd78b85c73f35b717e2c2dba78
parent32bf01526b74ff60d211094088716377baf7983e
crash-stack: unwinding by frame pointer on aarch64

This fixes and adds again commit 269790304eea1bde27644962efa7803c7ab611df.
Thus, this reverts commit ba3f2151f97c3e4bba1ac04c953f28ac4eb1e463,
which reverted commit 269790304eea1bde27644962efa7803c7ab611df.

To unwind call stack on aarch64 we need to use external
method, as libelf 0.153 does not support unwinding yet.
Possible methods are:
- using libunwind;
- manual walk with frame pointers;
- heuristic unwind by inspecting data stack.

This patch adds support for unwinding on aarch64 with frame pointers,
along with changes needed to modularize unwinding.

Change-Id: I461a06c96d56804fefb7167550e44074e734c94b
src/crash-stack/CMakeLists.txt
src/crash-stack/crash-stack-aarch64.c [new file with mode: 0644]
src/crash-stack/crash-stack-arm.c
src/crash-stack/crash-stack-libelf-helpers.c [new file with mode: 0644]
src/crash-stack/crash-stack-libelf.c
src/crash-stack/crash-stack-stub.c [new file with mode: 0644]
src/crash-stack/crash-stack-x86_64.c [new file with mode: 0644]
src/crash-stack/crash-stack.c
src/crash-stack/crash-stack.h