| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: Iae4a73546f672c208ffe1b224e8d9a9e693f95f0
|
|
|
|
| |
Change-Id: Id3b0b96a33441ce5d908aac38e639ac3598a7a89
|
|
|
|
|
|
|
|
| |
When doing a local unwind, do not include the frames that come
from either libunwind or libbacktrace.
Bug: 11518609
Change-Id: I0ec8d823aebbfa0903e61b16b7e5663f3fd65e78
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
The object hierarchy was confusing and convoluted. This removes
a lot of unnecessary code, and consolidates the BacktraceCurrent
and BacktraceThread code into BacktraceCurrent.
Change-Id: I01c8407d493712a48169df49dd3ff46db4a7c3ae
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
The latest clang (r230699) does not allow SP/PC to be declared in inline asm
lists. This is a problem for libraries that are attempting to save all
register state.
Change-Id: I1ce80530f8be85fd74e949d0c65b60080e0aaf2a
|
| |
| |
| |
| |
| |
| | |
This is a no-op.
Change-Id: Iecbcd5f6d818abbf98767a2e996c10f454b652e4
|
|/
|
|
|
|
| |
Otherwise it may have problems unwinding over itself.
Change-Id: I9b0d108018ae3f5d98b9ae6fb62d0af83a77d18e
|
|
|
|
|
|
|
|
|
|
| |
Included tests for this new feature.
Changed the NULLs to nullptr in backtrace_test.
Changed UniquePtr to std::unique_ptr in backtrace_test.
Change-Id: I92375465b8f8ba84589834cc162db5915bf1be81
|
|
|
|
|
|
|
|
|
|
|
| |
The backtrace structure used to include a pointer to a backtrace_map_t
that represented the map data for a particular pc. This introduced a
race condition where the pointer could be discarded, but the backtrace
structure still contained a pointer to garbage memory. Now all of the map
information is right in the structure.
Bug: 19028453
Change-Id: If7088a73f3c6bf1f3bc8cdd2bb4b62e7cab831c0
|
|
|
|
|
| |
Bug: 18930951
Change-Id: Ib7fd332b6e02241c0676ef33d2fa210a72efe1b1
|
|
|
|
|
|
| |
Removed unnecessary libbacktrace_c_includes variable
Change-Id: I2ef29dc9810f7d9a7dcf5c232e9e85d2fc2fd5e8
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Switch to the better supported pthread_cond to handle the Wait/Wake
functions.
Also, increase the number of simultaneous threads in the thread tests.
Bug: 18381207
(cherry picked from commit db44538387b08f367fc2419653639866f4c2fbd6)
Change-Id: Id326a7a7b92cb61573def3f761597c40f3ef2f4b
|
|
|
|
|
|
|
| |
This was previously set for libbacktrace_libc++, but apparently never
was for libbacktrace.
Change-Id: I85dc44b356710c6367f5cea3bc0a4d6c817ca202
|
|
|
|
|
|
|
| |
Rename the libc++ linked libbacktrace to the normal name.
Bug: 15193147
Change-Id: I75caf1ee527e3703825e0db757497fb8fa3dd122
|
|\
| |
| |
| |
| |
| |
| | |
BacktraceMap::Create on darwin"
* commit '2ea89b631d58ecd8edd7165ed8840d1e1047aa72':
Add uncached argument to BacktraceMap::Create on darwin
|
| |
| |
| |
| | |
Change-Id: I247a98fc3b98879a0c34a975f9914ccec95d1a04
|
| |
| |
| |
| |
| |
| | |
(cherry picked from commit f02593b0e61f8108449770094caa7bb39a646ec1)
Change-Id: I2012bf2dc553ebc663345b9eac6d794e80df9c00
|
|\ \
| | |
| | |
| | |
| | | |
* commit 'f02593b0e61f8108449770094caa7bb39a646ec1':
Allow getting an uncached process map.
|
| | |
| | |
| | |
| | | |
Change-Id: I58d7e90a7b5c4476a4b9f51640c54d13748ac220
|
|\ \ \
| |/ /
|/| /
| |/
| | |
* commit '83ddddaaba0fea8a1c0dcc64e795112bed67815f':
Update makefiles for host clang.
|
| |
| |
| |
| |
| |
| | |
bug 16172793
Change-Id: If7484c5dbcccce7d925bec97bff0a3e4c30e9434
|
|\ \
| |/
| |
| |
| |
| |
| | |
be multilib on the Mac too."
* commit '38dda3b8887286c44964dda0ce1c96425d9744f0':
libbacktrace_libc++ needs to be multilib on the Mac too.
|
| |
| |
| |
| | |
Change-Id: I2053345253c1d57c3485b790163ba0b4b10cc326
|
|\ \
| |/
| |
| |
| |
| |
| | |
testing."
* commit '4436749284dc2b74e6e0f430d0f803d1b7862d19':
Enable host multilib for ART testing.
|
| |
| |
| |
| | |
Change-Id: Ic3ae5122eba13565fb5a4cb1bd0e7e465fb2140c
|
|\ \
| |/
| |
| |
| |
| |
| | |
libbacktrace on the host for Mac."
* commit '2b95811601b05db7894359f037005a008274a973':
Build the libc++ variant of libbacktrace on the host for Mac.
|
| |
| |
| |
| |
| | |
Bug: 13751317
Change-Id: Iefadec1cd9b3ca109ac436bd5eb7c096c2dcbe40
|
|\ \
| |/
| |
| |
| |
| |
| | |
sigcontext."
* commit '012090e57b697133ad6f7d989e103d71302749f8':
Only copy mcontext data from sigcontext.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The ucontext_t data structure could be bigger than the kernel data
structure. Since the unwinder only cares about the mcontext data, only
copy that out of the structure. The mcontext data is the same size in
the kernel and in the ucontext_t structure.
Bug: 15189014
Change-Id: I5978169c4425b8212e11db85a57eb319cd0e264b
|
|\ \
| |/
| |
| |
| |
| |
| | |
from host libbacktrace"
* commit '633a2e3b6a1d00257965a5772a5467a6df9911a5':
Remove libstdc++ dependency from host libbacktrace
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The libc++ version of libbacktrace on the host was still linking against
libstdc++, and this was causing problems in art.
Change-Id: I1d14fb9e18abd074affcf46c8044407041970669
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* commit '219e867f61755720af3cddb5e8d2fe0e198a27ab':
Add missing headers
|
| |/
| |
| |
| |
| |
| |
| | |
These headers are needed for pid_t and free when using libc++ headers (POSIX
does not require that the symbols be exposed with the previous includes).
Change-Id: Ia51a4fdfdbae7377130a43c401c2d8d241671d1e
|
|\ \
| |/
| |
| |
| | |
* commit 'c6112ca4b8d0712fdd4c0ab3258d3ceaf2f8064e':
Really fixes the ub branches
|
| |
| |
| |
| | |
Change-Id: I1d78f4e6c1d8086c2895f6739c3202e9ef74fee2
|
|\ \
| |/
| |
| |
| | |
* commit '3f01965b3d1335ffff57e15fd47e5d99400dad3f':
Fix unbundled branches
|
| |
| |
| |
| | |
Change-Id: Ic8a58a6cf55221ec361bbb80c7c9636fe1349943
|
|\ \
| |/
| |
| |
| |
| |
| | |
libbacktrace"
* commit 'e9b36f1a9a280877cb130452c50af6a51360a203':
Adds libc++ versions of libbacktrace
|
| |
| |
| |
| | |
Change-Id: I4a1ce30e7c2166ac1846cc90de0252beee542ee6
|
|\ \
| |/
| |
| |
| |
| |
| | |
necessary."
* commit '413001aa6cd4addcf544348020f992ebc6d3e2d4':
Only include ucontext.h when necessary.
|
| |
| |
| |
| | |
Change-Id: I29014f6c6b82e0a9797e5d76147b3c4e3d82a7f5
|
|\ \
| |/
| |
| |
| | |
* commit '3adbe79d2f14665ff55a9b0db245abebc105658d':
Rewrite unwind thread handling.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This new version doesn't require any specialized thread
implementation, it uses the Current implementation to do its job.
In addition, it runs much faster when multiple threads are trying
to unwind at the same time since the global signal lock is held for
only a small amount of time. Even running through the threads one at
a time should be faster since it no longer requires two passes through
the unwound stacks.
The new code now allows multiple simultaneous unwinds of the
same thread.
Finally, add the ability to unwind from a ucontext_t passed in. This
functionality doesn't work for remote unwinds yet.
Change-Id: I4d181d7ca5ffd2acfd1686e668e6d21e36b425cb
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* commit 'b18da571f90eebedd99fe5607a6b0d7ae4e91893':
Remove unused LOCAL_LDLIBS.
|
| |/
| |
| |
| | |
Change-Id: I42aeb7668183e7a06207ee063f6eee4d37d66c6e
|
|\ \
| |/
| |
| |
| |
| |
| | |
threads instead of SIGURG."
* commit '7e250b002b5a28a3919bc704e9bc6610b3a4096f':
Use real time signal for threads instead of SIGURG.
|