summaryrefslogtreecommitdiffstats
path: root/debuggerd
Commit message (Collapse)AuthorAgeFilesLines
* Improve liblog's fatal logging.Elliott Hughes2014-04-241-21/+28
| | | | | | | This makes LOG_ALWAYS_FATAL and LOG_ALWAYS_FATAL_IF as good as regular assert(3). Change-Id: I0666684d30cae7baf23c64b33d35c1e43f81acf0
* logd: liblog: logcat: debuggerd: Add LOG_ID_CRASHMark Salyzyn2014-04-161-1/+2
| | | | Change-Id: Iea453764a1a4fc1661f461f10c641c30150e4d20
* debuggerd: use LOCAL_MULTILIBColin Cross2014-03-262-92/+75
| | | | | | | Use LOCAL_MULTILIB to build multiple versions of executables instead of manually creating two build rules. Change-Id: I1a993ff7b5f527a88735f46eec9822bb97d16490
* build debuggerd and debuggerd64 on 64-bit architecturesColin Cross2014-02-122-50/+89
| | | | Change-Id: I1518d45ae0c5e0fed31d071fdaf19a67bad1bdfc
* Merge "Convert all selinux_android_restorecon and _setfilecon calls to new API."Nick Kralevich2014-02-121-1/+1
|\
| * Convert all selinux_android_restorecon and _setfilecon calls to new API.Stephen Smalley2014-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | libselinux selinux_android_restorecon API is changing to the more general interface with flags and dropping the older variants. Also get rid of the old, no longer used selinux_android_setfilecon API and rename selinux_android_setfilecon2 to it as it is the only API in use. Change-Id: I1e71ec398ccdc24cac4ec76f1b858d0f680f4925 Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
* | Merge "Use stat structure to keep oldest mtime."Christopher Ferris2014-02-081-20/+11
|\ \
| * | Use stat structure to keep oldest mtime.Christopher Ferris2014-02-071-20/+11
| |/ | | | | | | Change-Id: If9496127db28d2dcd09bc5b3144632a43afb8d55
* | Use socklen_t instead of int in debuggerd.Elliott Hughes2014-02-071-11/+9
|/ | | | | | Also other trivial C++ cleanup. Change-Id: I9b5278c5205e0ea4f9dcbbe3e7b99921dd2436dc
* system/core LP64 cleanup.Elliott Hughes2014-02-051-4/+4
| | | | | | | Fixes -Wint-to-pointer and -Wpointer-to-int warnings, plus various -Wformat warnings. Change-Id: I6c5eea6b4273d82d28b8e5d2925f3e5457511b17
* Fix debuggerd's symbol offset output.Elliott Hughes2014-01-311-2/+2
| | | | | | | | | | Before: 00007fff33e489d8 00007ff286e4ad94 /system/lib64/libc.so (__libc_init+54u) After: 00007fff45c6c158 00007f61bc36fd94 /system/lib64/libc.so (__libc_init+84) Change-Id: I36796c99843a41583824a96793a5a4c81ddb666e
* LP64 should have debuggerd and debuggerd64.Elliott Hughes2014-01-311-1/+5
| | | | Change-Id: I4e39c200e6867bb9a5bbcfec1c449b8864028feb
* Remove dead code that looked like part of debuggerd.Elliott Hughes2014-01-311-13/+0
| | | | | | | Note that these were two different functions. The definition was unused, and the declaration was undefined. Change-Id: I2edd10a0ab9422cd5252bdb9ccdd726dc5fad531
* AArch64: Port debuggerdKévin PETIT2014-01-307-7/+220
| | | | | Change-Id: Ib18f76f375a1d70c84e0a09d221e17ac43144b96 Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
* LP64: Enable debuggerd/libbacktrace/libunwind.Pavel Chupin2014-01-306-66/+106
| | | | | Change-Id: I2e432839f86c33c2adbaac8cc12ca8961956044b Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
* debuggerd: a few generic improvementsKévin PETIT2014-01-305-129/+104
| | | | | | | | | | This one makes dump_memory reasonably architecture-agnostic so it is possible to share the code between architectures. It also includes a few small improvements in tombstone.cpp. Change-Id: Ib8a9599bfa420b41e80207988e87aee1b9d79541 Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
* Merge "Re-enable libunwind for arm."Christopher Ferris2014-01-281-9/+3
|\
| * Re-enable libunwind for arm.Christopher Ferris2014-01-281-9/+3
| | | | | | | | | | | | | | | | | | | | Update to handle the new optimized way that libunwind works. In addition, a small refactor of the BacktraceMap code. A few new tests of for good measure. Change-Id: I2f9b4f5ad5a0dfe907b31febee76e4b9b94fb76f
* | debuggerd: Support newline split in log messagesMark Salyzyn2014-01-271-10/+18
| | | | | | | | | | | | (cherry picked from commit 706fad2b5fd96fb9b705795af1c11ef44d8a8fe9) Change-Id: I2c19f12ef027ab1e1455ce78824537da1b03edcd
* | debuggerd: Incorporate liblog reading APIMark Salyzyn2014-01-271-59/+38
|/ | | | | | (cherry picked from commit a63f927ce10817ce637dd52ba2f4ac763ce4fc61) Change-Id: Ic26e9dba3b45c827d122b03e34cc4a5bd48f7deb
* Rewrite libbacktrace to be all C++.Christopher Ferris2014-01-161-38/+40
| | | | | | | | | | | | | This includes removing the map_info.c source and replacing it with the BacktraceMap class to handle all map related code. Change all callers of libbacktrace map functionality. Also modify the corkscrew thread code so that it doesn't need to build the map twice (once in the corkscrew format and once in the libbacktrace format). Change-Id: I32865a39f83a3dd6f958fc03c2759ba47d12382e
* Next phase of the move, reformat use C++ features.Christopher Ferris2014-01-1310-1742/+1645
| | | | | | | | | | | | | | | | | Use the libbacktrace C++ interface instead of the C interface in debuggerd. Reformat the debuggerd code to be closer to Google C++ style. Fix all debuggerd casts to be C++ casts. Add a frame number to the frame data structure for ease of formatting and add another FormatFrameData function. Change the format_test to use the new FormatFrameData function. Modify all of the backtrace_test to use the C++ interface. Change-Id: I10e1610861acf7f4a3ad53276b74971cfbfda464
* Move to C++ for debuggerd.Christopher Ferris2014-01-109-14/+22
| | | | | | | | | This is part 1, only including the bare minimum changes because our diff tool doesn't easily show differences when a file moves. This also breaks it into a small chunk in case some other changes break things, as unlikely as I think that will be. Change-Id: Ib7a3e7a2cc1ac574d15b65fda23813ebcf5d31af
* Use the more portable <elf.h> instead of <sys/exec_elf.h>.Elliott Hughes2014-01-101-1/+1
| | | | | Bug: 12476126 Change-Id: I08684987e867371d5537dadf1acb3408b420ad0c
* Refactor to share map_info amongst threads.Christopher Ferris2014-01-081-4/+9
| | | | | | | Allow the use of the same map info to be shared when getting information on multiple threads from the same pid. Change-Id: I2e460e20154a10f4894ae563331fb32179e4551f
* Switch ARM debuggerd over to <sys/user.h>.Elliott Hughes2013-11-261-8/+5
| | | | Change-Id: I106d4e80a2e819f1d47ca81893340f567bb8b4d9
* Merge commit '536dea9d61a032e64bbe584a97463c6638ead009' into HEADThe Android Open Source Project2013-11-223-5/+8
|\ | | | | | | Change-Id: I5c469a4b738629d99d721cad7ded02d6c35f56d5
| * am 9492b6e7: am 2de8102d: Merge "Fix bug in abort message processing."Christopher Ferris2013-10-091-1/+0
| |\ | | | | | | | | | | | | * commit '9492b6e72cef71422ba624e3cd11f07156cfb34a': Fix bug in abort message processing.
| * \ am fa135f5c: am 7dbe9660: Merge "Update debuggerd to use libbacktrace."Christopher Ferris2013-10-048-204/+172
| |\ \ | | | | | | | | | | | | | | | | * commit 'fa135f5ce95a8eff2ff51c03ad2e9d9b2a8b2274': Update debuggerd to use libbacktrace.
| * | | Move liblog headers to system/core/include/logColin Cross2013-07-243-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the liblog headers to log/ instead of cutils/ to complete the separation of libcutils and liblog. cutils/log.h still exists and includes log/log.h in order to support the many existing modules that use cutils/log.h. Change-Id: I2758c9f4aedcb809ca7ba8383d0f55041dd44345
| * | | am a570312a: am f265426f: am 596ee9ea: Merge "Improve the crasher ↵Elliott Hughes2013-07-161-2/+4
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | stack-overflow command." * commit 'a570312a56938f6ebfcadc3ec9830ab8a2407654': Improve the crasher stack-overflow command.
| * | | | debuggerd: Ignore SIGPIPENick Kralevich2013-06-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The system server may prematurely close the connection to /data/system/ndebugsocket if it's not interested in the data from debuggerd. If it does so, we don't want to die due to a SIGPIPE. Change-Id: Iaef1f497bcd630144e6df6a06644a3293b85b6e0
* | | | | Switch MIPS over to <sys/user.h>.Elliott Hughes2013-11-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Bug: 11559337 Change-Id: I47ce51ec2d45d9cfdfbb6cccce93a66b0f02d967
* | | | | Remove x86 debuggerd dependencies on non-uapi headers and corkscrew.Elliott Hughes2013-11-141-14/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also remove a hack that claims to be "just like ARM", but which was different from the ARM and MIPS behavior. Change-Id: I9b16da9a56430998ded27d304ce52c7cc8bfedfc
* | | | | Rewrite libbacktrace using C++.Christopher Ferris2013-10-283-41/+43
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old code was essentially trying to be C++ in C and was awkward. This change makes it all objects with a thin layer that C code can use. There is a C++ backtrace object that is not very useful, this code will replace it. This change also includes moving the backtrace test to a gtest, and adding coverage of all major functionality. Bug: 8410085 Change-Id: Iae0f1b09b3dd60395f71ed66010c1ea5cdd37841
* | | | Fix bug in abort message processing.Christopher Ferris2013-10-091-1/+0
| |_|/ |/| | | | | | | | | | | Bug: 11156592 Change-Id: I4b82e7be5d7fccd167f6c52f78a5af3d3a553779
* | | Update debuggerd to use libbacktrace.Christopher Ferris2013-10-038-204/+172
| |/ |/| | | | | | | | | | | | | | | | | | | | | Remove all of the code in debuggerd that uses libcorkscrew directly and replace with libbacktrace. Also do a bit of refactoring to clean up some functions that were passing around variables that weren't used. Bug: 8410085 Change-Id: I27da4fbe3f12ce38a85b4432fc1119984c9c391b
* | am 596ee9ea: Merge "Improve the crasher stack-overflow command."Elliott Hughes2013-07-161-2/+4
|\ \ | |/ |/| | | | | * commit '596ee9ea8ae37b17fbdff91508f55250d528f1d2': Improve the crasher stack-overflow command.
| * Improve the crasher stack-overflow command.Elliott Hughes2013-07-151-2/+4
| | | | | | | | | | | | Runs a lot quicker, with no intermediate noise. Change-Id: Icd911ff305da2e0889029dc78d5c2b39f32111c5
* | am 6ef0dfec: Merge "Add a new test to crasher to upset dlmalloc."Elliott Hughes2013-06-121-25/+34
|\ \ | |/ | | | | | | * commit '6ef0dfecca9fde5abe15ceea30e0615897d7b374': Add a new test to crasher to upset dlmalloc.
| * Add a new test to crasher to upset dlmalloc.Elliott Hughes2013-06-121-25/+34
| | | | | | | | | | | | | | | | We should also add a test for heap corruption, but I failed to come up with a kind of corruption that dlmalloc actually detects (rather than just crashing accidentally). Change-Id: I7457e732729635b171ffc44517c3de71f55608e6
* | am cb6a842c: Merge "Add a stack overflow test to crasher, and document all ↵Elliott Hughes2013-04-231-27/+38
|\ \ | |/ | | | | | | | | | | the options." * commit 'cb6a842c6e2048e6cd3c5a2d478113347c75d7aa': Add a stack overflow test to crasher, and document all the options.
| * Add a stack overflow test to crasher, and document all the options.Elliott Hughes2013-04-231-27/+38
| | | | | | | | Change-Id: Iebe80c24ef43f08d258881e7847516d414436931
| * Modify debuggerd to cope with the abort message.Elliott Hughes2013-04-043-11/+53
| | | | | | | | | | Bug: 8531731 Change-Id: I416ec1da38a8a1b0d0a582ccd7c8aaa681ed4a29
* | Fix regression: log mem maps around native fault addressChristopher Tate2013-04-181-10/+11
| | | | | | | | | | | | | | | | | | | | | | Restore the logging of the mem maps around the fault address along with the rest of the faulting thread's information. (It was still being written to the tombstone file, but the logging got dropped on the floor in the refactoring around AM report integration). Bug 8654694 Change-Id: Id8851fa765dfe6b6ce41ccfc39e85eaac0acc629
* | Add liblogYing Wang2013-04-091-2/+3
| | | | | | | | | | Bug: 8580410 Change-Id: Iab3a9b4307f207c14a04a922cc7350c54e60e9ad
* | Uploaded native crash dumps do not include memory contentsChristopher Tate2013-04-057-98/+114
| | | | | | | | | | | | | | | | | | Also fixed the LOG() macro to actually write to the log again, tracking the change in _LOG() argument semantics. Bug 8322568 Change-Id: I79330c85c26d3ffb734315b6d0f2c0bb80bd234a
* | Modify debuggerd to cope with the abort message.Elliott Hughes2013-04-053-11/+53
| | | | | | | | | | | | | | (cherry picked from commit 707b8bbe1800dbebd932f54e86347563ee86c36e) Bug: 8531731 Change-Id: I2785a07ef83e085f338d3094f9972de23117807c
* | debuggerd now notifies the Activity Manager about native crashesChristopher Tate2013-04-016-7/+106
| | | | | | | | | | | | | | | | | | | | | | The Activity Manager sets up a permission-guarded domain socket, which debuggerd connects to when a crash happens. If this is successful, the daemon then mirrors the logged crash report to that socket, then closes it. Bug 8322568 Change-Id: Ife0c772a628ef82e8457094e511ce1edbfe57460
* | am 3e77b752: am 0b535558: Merge "Unwinding implementation via eh_frame ↵Elliott Hughes2013-03-141-0/+16
|\ \ | |/ | | | | | | | | | | sections for x86" * commit '3e77b7521ba96fd1ff6fed0e019aff5f46a31428': Unwinding implementation via eh_frame sections for x86