No description
Find a file
Christopher Ferris 4cc36d2b43 Fix handling of load bias values.
It turns out that for the dwarf information, if a FDE indicates it's pc
relative, then pc has to be incremented by the load bias. If not, then
it should not be incremented.

Previously, the code always subtracted load bias values from pcs, and assumed
that all fdes were incremented by load bias values. The new code actually
reads the fdes and adjusted the pcs in the fde and in the eh frame hdr so
that load bias values are already handled properly.

In addition, add dumping of arm exidx values in unwind_reg_info. This allowed
verifying that the debug frame in those elf files was being handled properly.

Added a new unit test that only has a debug frame that has a non-zero load
bias and has fde entries that do not have pc relative encoding.

Fix a couple of other small bugs.

Bug: 109824792

Test: All libbacktrace/libunwindstack unit tests pass.
Test: Ran ART 137-cfi test and 004-ThreadStress.
Test: Verify that displaying the fde start and end pc actually match the
Test: real data for fde that have pc relative set, and that don't.
Test: Verified that the unwind information for arm exidx matches the
Test: debug frame data.

Change-Id: I707555286b5cb05df9f25489e8c5ede753cfe0fb
2018-06-11 18:53:55 -07:00
adb Merge "Fix exit-time-destructor warning" 2018-06-06 23:28:07 +00:00
adf Merge "Add OWNERS." 2017-12-07 23:21:26 +00:00
base libbase: fix libbase_test.logging.StdioLogger. 2018-06-06 12:54:41 -07:00
bootstat Fix performance degradation from BootSequence atom 2018-06-04 13:31:05 -07:00
cpio Possible null pointer miss on realloc 2017-03-23 22:41:14 +01:00
debuggerd Improve SIGILL support. 2018-05-30 12:58:43 -07:00
demangle Build adbd for recovery 2018-05-24 14:11:11 +09:00
diagnose_usb Build adbd for recovery 2018-05-24 14:11:11 +09:00
fastboot Clarify 'fastboot flash' help. 2018-05-24 18:30:58 -07:00
fs_mgr Merge "fs_mgr: remove some unused functions" 2018-06-08 02:27:03 +00:00
gatekeeperd resolve merge conflicts of 0dd4b6aa3 to stage-aosp-master 2017-09-15 16:50:34 +09:00
healthd healthd: Add elsk as OWNERS 2018-05-03 12:25:00 -07:00
include Move android_filesystem_config.h => fs_config.h 2017-08-03 17:20:27 +00:00
init Merge "androidboot.lrap => logical_partitions" 2018-05-31 22:05:06 +00:00
libappfuse bpfmt. 2018-02-16 17:58:14 -08:00
libasyncio Build adbd for recovery 2018-05-24 14:11:11 +09:00
libbacktrace Merge "Build adbd for recovery" 2018-05-25 05:58:01 +00:00
libbinderwrapper Make libbinderwrapper available in /vendor partition 2018-04-06 08:41:21 +09:00
libcrypto_utils Build adbd for recovery 2018-05-24 14:11:11 +09:00
libcutils Support /product/bin 2018-06-01 08:33:04 +09:00
libdiskconfig Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]] 2017-10-02 10:44:29 -07:00
libgrallocusage Use -Werror in system/core 2017-11-01 11:32:55 -07:00
libion libion: cleanup logging 2018-03-07 10:56:06 -08:00
libkeyutils Build adbd for recovery 2018-05-24 14:11:11 +09:00
liblog liblog: expect content only if ro.logd.kernel is enabled 2018-06-05 07:43:15 -07:00
libmemtrack Add OWNERS. 2017-12-07 13:30:03 -08:00
libmemunreachable libmemunreachable: fix docs formatting. 2018-05-30 10:53:46 -07:00
libmetricslogger Add support for logging complex events from C++. 2018-05-08 10:27:09 +01:00
libnativebridge bpfmt. 2018-02-16 17:58:14 -08:00
libnativeloader libnativeloader: add jiyong to OWNERS. 2018-05-31 18:09:20 -07:00
libnetutils Add OWNERS. 2017-12-07 13:30:03 -08:00
libpackagelistparser Mark as recovery_available: true 2018-05-15 09:47:04 +09:00
libpixelflinger MIPS[64]: codeflinger: Fix build due to unused variable warnings 2017-11-06 16:38:49 +01:00
libprocessgroup libbase: add host properties support. 2018-05-24 18:04:31 -07:00
libprocinfo Build adbd for recovery 2018-05-24 14:11:11 +09:00
libqtaguid Redirect qtaguid native call to netd fwmark client 2017-11-09 18:02:22 -08:00
libsparse Build adbd for recovery 2018-05-24 14:11:11 +09:00
libstats Remove a redundant check in statsd socket code. 2018-05-22 16:06:21 -07:00
libsuspend Add force_suspend function 2018-01-19 12:30:39 -08:00
libsync Merge "libsync: OWNERS." 2018-06-05 19:38:25 +00:00
libsystem Mark as recovery_available: true 2018-05-15 09:47:04 +09:00
libsysutils Merge "libsysutils: Delete dead code: FrameworkClient" 2018-06-07 16:44:24 +00:00
libunwindstack Fix handling of load bias values. 2018-06-11 18:53:55 -07:00
libusbhost Remove urb request size maximum. 2018-02-07 16:12:14 -08:00
libutils Mark as recovery_available: true 2018-05-15 09:47:04 +09:00
libvndksupport bpfmt. 2018-02-16 17:58:14 -08:00
libziparchive Make ziparchive-tests run standalone. 2018-04-25 12:50:17 -07:00
llkd llkd: bootstat: propagate detailed livelock canonical boot reason 2018-04-18 14:02:16 -07:00
lmkd lmkd: Do not set soft_limit_in_bytes on high-end devices 2018-05-22 10:25:38 -07:00
logcat Add event log tag for hidden API access logging. 2018-05-08 10:26:36 +01:00
logd Remove more bogus <stdbool.h> #includes from C++. 2018-05-08 13:00:06 -07:00
logwrapper Build adbd for recovery 2018-05-24 14:11:11 +09:00
mkbootimg Populate recovery DTBO offset correctly 2018-06-04 15:26:42 -07:00
property_service Mark as recovery_available: true 2018-05-15 09:47:04 +09:00
qemu_pipe Build adbd for recovery 2018-05-24 14:11:11 +09:00
reboot reboot: only pause indefinitely for non-shutdown operations 2017-09-29 16:29:52 +00:00
rootdir Support /product/bin 2018-06-01 08:33:04 +09:00
run-as run-as: Keep supplementary groups. 2017-09-29 15:34:23 -04:00
sdcard Remove FUSE logic; it's only a sdcardfs wrapper. 2018-01-12 15:41:55 -07:00
shell_and_utilities Update shell and utilities doc on the use of dd and grep. 2018-06-08 12:52:56 -04:00
storaged Merge "storaged: lower capabilities in init" 2018-04-12 15:55:26 +00:00
toolbox Compile toolbox's newfs_msdos for the host 2018-05-02 13:14:51 -07:00
trusty bpfmt. 2018-02-16 17:58:14 -08:00
usbd bpfmt. 2018-02-16 17:58:14 -08:00
.clang-format Add a 2 width option of clang format. 2017-03-10 13:01:39 -08:00
.clang-format-2 Only allow short functions in class definitions. 2017-03-28 12:31:37 -07:00
.clang-format-4 clang-format: Double-indent continuation lines 2018-06-07 19:57:57 +09:00
.gitignore Ignore adb/*.pyc files 2015-08-11 12:59:58 -07:00
Android.bp Export android_filesystem_config.h as a filegroup 2017-01-17 18:20:28 -08:00
Android.mk Remove the simulator target from all makefiles. 2011-07-11 22:12:32 -07:00
CleanSpec.mk Add VNDK version for namespace configuration files 2017-12-13 10:31:04 +09:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
NOTICE Fix omission in NOTICE file. 2013-07-30 13:56:55 -07:00
OWNERS Move per-file OWNERS directives to their directories. 2018-06-06 11:49:40 +09:00
platform_tools_tool_version.mk Fix warning on the build servers 2017-05-25 12:35:40 -07:00
PREUPLOAD.cfg Add a PREUPLOAD.cfg file to run git-clang-format on every commit 2017-03-08 16:51:26 +08:00