| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On 64 bit systems, calls to dump_backtrace_to_file or dump_tombstone
try and directly contact the correct debuggerd (32 bit vs 64 bit)
by reading the elf information for the executable.
Unfortunately, system_server makes a call to dump_backtrace_to_file
and it doesn't have permissions to read the executable data, so it
defaults to always contacting the 64 bit debuggerd.
This CL changes the code so that all dump requests go to the 64 bit
debuggerd, which reads the elf information and redirects requests for
32 bit processes to the 32 bit debuggerd.
Testing:
- Forced the watchdog code in system_server to dump stacks and
verified that all native stacks are dumped correctly.
- Verified that dumpstate and bugreport still properly dump the native
processes on a 64 bit and 32 bit system.
- Intentionally forced the 64 bit to 32 bit redirect to write only a
byte at a time and verified there are no errors, and no dropped data.
- Used debuggerd and debuggerd64 to dump 32 bit and 64 bit processes
seemlessly.
- Used debuggerd on a 32 bit system to dump native stacks.
Bug: https://code.google.com/p/android/issues/detail?id=97024
Change-Id: Ie01945153bdc1c4ded696c7334b61d58575314d1
|
|
|
|
|
| |
Not sure why this only shows up with clang.
Change-Id: Id5603483e32f8a8d4b091dbb31b3142e3f77deac
|
|
|
|
|
| |
Bug: 15193147
Change-Id: I935a08e98077b688d1735fb5b84a615cb7df8810
|
|
|
|
|
|
| |
failure.
Change-Id: Ia37cb3f8ecb00a927fa3fc8b4131c158413646e7
|
|
|
|
|
|
|
|
|
|
|
| |
There's no good reason to separate "fill the integer registers with
recognizable patterns and crash" from "fill the FP registers with recognizable
patterns and crash".
Also remove the incorrect use of ARCH_ARM_HAVE_VFP_D32 rather than try to fix
it.
Change-Id: I3a4a3aca1575de5489314027ae52168997404d79
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I361e9668baa218fc01e723c2df1a34ca6329cf47
|
|/
|
|
|
|
|
| |
In particular, turn on -Wunused, which is globally off by default
thanks to build/core/config.mk.
Change-Id: Iba3ee1c0726f43eced972a53959f0e1cd97190c9
|
|
|
|
|
|
| |
- Deal with some -Wunused / -Wunused-variable issues
Change-Id: I39849fe30170f69d1cab7d4ad2629b3a49e14ee7
|
|
|
|
|
|
|
| |
Use LOCAL_MULTILIB to build multiple versions of executables
instead of manually creating two build rules.
Change-Id: I1a993ff7b5f527a88735f46eec9822bb97d16490
|
|
|
|
| |
Change-Id: I1518d45ae0c5e0fed31d071fdaf19a67bad1bdfc
|
|
|
|
| |
Change-Id: I4e39c200e6867bb9a5bbcfec1c449b8864028feb
|
|
|
|
|
| |
Change-Id: Ib18f76f375a1d70c84e0a09d221e17ac43144b96
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
|
|
|
|
|
| |
Change-Id: I2e432839f86c33c2adbaac8cc12ca8961956044b
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Bug: 8580410
Change-Id: Iab3a9b4307f207c14a04a922cc7350c54e60e9ad
|
|
|
|
|
|
|
|
| |
bionic's __stack_chk_fail was preventing debuggerd from dumping
stacks, which was not helpful.
Bug: 2487269
Change-Id: Idba2a274037b960dfb2ac1c21686323268c4b372
|
|
|
|
| |
Change-Id: I8272c573b3c5dc663203bafab68fad5e94d89364
|
|
|
|
| |
Change-Id: I5a241dc2e470148be0ad2c138e31f1aba5ab8812
|
|
|
|
|
|
|
|
| |
Restore the security contexts of tombstone directory
when initially created.
Change-Id: I25b53730991576eccb62ca57050decd584acc639
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Provides a new mechanism for dumpstate (while running as root)
to request that debuggerd dump the stacks of native processes that
we care about in bug reports. In this mode, the backtrace
is formatted to look similar to a Dalvik backtrace.
Moved the tombstone generating code into a separate file to
make it easier to maintain.
Fixed a bug where sometimes the stack traces would be incomplete
because we were not waiting for each thread to stop after issuing
PTRACE_ATTACH, only the main thread. So sometimes we were missing
traces for some threads.
Refactored the logging code to prevent accidentally writing data
to logcat when explicitly dumping a tombstone or backtrace from the
console.
Only root or system server can request to dump backtraces but
only root can dump tombstones.
Bug: 6615693
Change-Id: Ib3edcc16f9f3a687e414e3f2d250d9500566123b
|
|
|
|
| |
Change-Id: I5e3645a39d96c808f87075b49111d0262a19a0c8
|
|
|
|
|
|
| |
These are only for debuggerd testing.
Change-Id: If2d2ff85e8c182d366cc251e9446ae7fdd094e55
|
|
|
|
|
|
| |
Change-Id: I0c0d9c2d7e476b8d117aaf505a9480a47c0b5c05
Signed-off-by: Lei Li <lei.l.li@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
|
|
|
|
|
| |
Change-Id: I22dd02daf617672fc0a8ba7e396017c57f17e26e
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
|
|\
| |
| |
| | |
Change-Id: I50b7bc6faa6d0abd4998cae8fc7dda1e8fa49407
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change enables debuggerd to provide backtraces with function
names in tombstone files and log messages. It does this by reading
the image file that the address is found in, and parsing the dynamic
symbol table to try to extract the symbol corresponding to the given
address.
This works best when "-Wl,-export-dynamic" is added to the LDFLAGS
of each library and executable, because this will cause all symbols
to be added to the dynamic symbol table. If this flag is not present,
it will still work, but it will only be able to identify functions
which are part of the external API of the library/executable.
Change-Id: I618baaff9ed9143b7d1a1f302224e9f21d2b0626
|
| |
| |
| |
| | |
Change-Id: I6007ff21076e92b04a17fb030472a9f8842f0315
|
|/
|
|
|
| |
Bug: 2226399
Caveat: d0/d1 appear to be clobbered by ptrace. It will be tracked by a new bug.
|
| |
|
| |
|
| |
|
|
|