android_system_core/debuggerd
liyong 381b89c8db Fix scudo fault address processing.
The code doesn't properly check if data is not read properly, so
make it fail if reads fail. Also, change the algorithm so that
first try and read the faulting page then 16 pages before and 16
pages after. Rather than trying to read every one of these pages,
stop as soon as one is unreadable. This means that the total memory
passed to the scudo error function is all valid data, rather than
potentially being some uninitialized memory.

Added new unit tests to cover scudo address processing.

Bug: 233720136

Test: All unit tests pass.
Test: atest CtsIncidentHostTestCases
Change-Id: I18a97bdee9a0c44075c1c31ccd1b546d10895be9
2022-05-26 18:50:52 -07:00
..
client debuggerd_client: also log errors to the dump file. 2021-06-29 11:59:14 -07:00
common/include Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
crasher Add two new crash commands. 2022-04-13 16:38:16 -07:00
handler Use the new AndroidUnwinder object. 2022-05-12 15:18:46 -07:00
include/debuggerd Teach debuggerd to pass the secondary ring buffer to __scudo_get_error_info(). 2021-02-12 12:30:52 -08:00
libdebuggerd Fix scudo fault address processing. 2022-05-26 18:50:52 -07:00
proto Update for accurate unreadable elf files. 2022-03-15 09:50:48 -07:00
rust/tombstoned_client Make some debuggerd libraries available in apex com.android.virt 2022-04-05 15:55:16 +00:00
seccomp_policy Symbolic constants for older minijails 2022-03-21 16:31:00 -07:00
tombstoned Remove double check of fd value. 2021-09-01 13:36:03 -07:00
.clang-format Remove extraneous .clang-format files 2017-03-14 14:06:31 -07:00
Android.bp Fix scudo fault address processing. 2022-05-26 18:50:52 -07:00
crash_dump.cpp Use the new AndroidUnwinder object. 2022-05-12 15:18:46 -07:00
crash_test.cpp Add a test to verify the dex_pc is correct. 2021-09-15 22:14:28 +00:00
crash_test.h Add a test to verify the dex_pc is correct. 2021-09-15 22:14:28 +00:00
debuggerd.cpp Always use main thread pid for manual dumping. 2021-07-30 14:08:03 -07:00
debuggerd_benchmark.cpp debuggerd: add pause time benchmark. 2017-12-19 16:36:04 -08:00
debuggerd_test.cpp Merge "[GWP-ASan] Enable debuggerd to pull more allocation metadata." 2022-04-21 18:12:43 +00:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2009-03-03 19:32:55 -08:00
OWNERS Remove jmgao from OWNERS files. 2021-08-10 21:42:14 -07:00
pbtombstone.cpp Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
protocol.h Teach debuggerd to pass the secondary ring buffer to __scudo_get_error_info(). 2021-02-12 12:30:52 -08:00
TEST_MAPPING Add hwasan presubmit for debuggerd. 2022-04-18 20:27:52 +00:00
util.cpp Dump threads in tombstone fallback path. 2022-02-16 15:02:38 -08:00
util.h Dump threads in tombstone fallback path. 2022-02-16 15:02:38 -08:00