summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Add error propagation into Unwinder/Elf objects."android-wear-8.0.0_r1Christopher Ferris2018-01-2531-222/+630
|\
| * Add error propagation into Unwinder/Elf objects.Christopher Ferris2018-01-2431-222/+630
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The backtrace offline code uses these error codes to diagnose errors. In addtion, I've had cases where seeing these errors would help diagnose failures. This also allows us to add a few features to indicate why an unwind terminated (such as max frames exceeded). Bug: 65682279 Test: Updated unit tests pass. Change-Id: If82b5092698e8a194016d670efff1320f9b44d50
* | Merge "libutilscallstack is private VNDK-SP"Treehugger Robot2018-01-251-0/+1
|\ \
| * | libutilscallstack is private VNDK-SPJiyong Park2018-01-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The library isn't intented to be exposed to vendors. It is a platform private library. Bug: 72471487 Test: Pixel 2016/2017 boots to the UI. Photo editing works. Change-Id: Ib0479a43d66d988c2f882688240746bed3213dad
* | | Merge "Support /product partition"Jaekyun Seok2018-01-245-2/+18
|\ \ \
| * | | Support /product partitionJaekyun Seok2018-01-245-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL will enable reading /product/build.prop and add product paths into ld.config.txt.in. Bug: 64195575 Test: tested with 'PRODUCT_PRODUCT_PROPERTIES := ro.product.abc=abc' on sailfish Change-Id: Ie996def20e25dc1afe0c74af2096af844934b2dc
* | | | Merge "Add a graphics owner for graphics.h."Treehugger Robot2018-01-241-0/+2
|\ \ \ \ | |_|_|/ |/| | |
| * | | Add a graphics owner for graphics.h.Elliott Hughes2018-01-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Bug: N/A Test: N/A Change-Id: I91c07531ba8a2da0187b7411b9c11dc3191dcede
* | | | Merge "Small behavioral changes to the unwinder."Christopher Ferris2018-01-2418-20/+264
|\ \ \ \ | |_|/ / |/| | |
| * | | Small behavioral changes to the unwinder.Christopher Ferris2018-01-2418-20/+264
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Be a little more lenient when reading the cies/fdes. If next entry data winds up incorrect, don't fail, simply stop processing the entries. This only applies when reading all of the cies/fdes at once. - Fail to init an eh_frame with no entries and fallback to assuming the eh_frame has no header instead. - Change the step to always try debug_frame first which has the most accurate information. - Add small unit tests and a couple of offline unit tests to verify this behavior. These changes are needed to support offline unwinding since it depends on this new behavior. Bug: 65682279 Test: Ran new unit tests. Change-Id: I3529f1b0c8e14cd7409494e5de2f3c9e78d0855e
* | | | Merge "Add MCL_ONFAULT to mlockall"Daniel Colascione2018-01-241-1/+10
|\ \ \ \ | |/ / / |/| | |
| * | | Add MCL_ONFAULT to mlockallDaniel Colascione2018-01-231-1/+10
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This way, we don't fault in the entirety of our DSOs immediately; instead, used pages are "sticky" in memory. Works only on kernel 4.4 and up: downlevel, we ignore the mlockall failure. Once we get statically-linked lmkd in better shape, we'll just switch to that. Change-Id: I07a75ee3bc1264a1db41635c2acf611fede99b91
* | | Merge "Add extra frame when dex_pc is non-zero."Christopher Ferris2018-01-239-5/+651
|\ \ \
| * | | Add extra frame when dex_pc is non-zero.Christopher Ferris2018-01-239-5/+651
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the art dex file library to read the dex data. Add unit tests for the UnwindDexFile code. Bug: 72070049 Test: All unit tests continue to pass. Test: Dumped the backtrace of the 137-cfi test while running in interpreter Test: mode and verified that the stack trace is correct. Did this on host Test: and for arm/arm64. Change-Id: Ia6f343318c5dd6968a954015a7d59fdf101575b0
* | | | Merge "Fix selinux denials for usbd"Treehugger Robot2018-01-231-1/+1
|\ \ \ \ | |_|/ / |/| | |
| * | | Fix selinux denials for usbdBadhri Jagan Sridharan2018-01-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | auditd : type=1400 audit(0.0:9): avc: denied { dac_override } for comm="usbd" capability=1 scontext=u:r:usbd:s0 tcontext=u:r:usbd:s0 tclass=capability permissive= auditd : type=1400 audit(0.0:9): avc: denied { dac_override } for comm="usbd" capability=1 scontext=u:r:usbd:s0 tcontext=u:r:usbd:s0 tclass=capability permissive=0 Bug: 72397740 Test: booted the device to make sure that the denials are no longer seen. Change-Id: Ie276103ba261fd762fb8c24234904e3f3ce3d2f1
* | | | Merge "Label /vendor_file_contexts as file_contexts_file"Tom Cherry2018-01-231-0/+1
|\ \ \ \ | |/ / / |/| | |
| * | | Label /vendor_file_contexts as file_contexts_fileTom Cherry2018-01-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vendor_init doesn't have permissions to read rootfs labeled files, but needs to read /vendor_file_contexts to do restorecon correctly. This file is a file_contexts file, so labeling it as such seems appropriate. Test: bullhead + vendor_init doesn't hit this audit Change-Id: I475e9735616c2426b9c7073700272f878ced2135
* | | | Merge "Build toolbox with _FILE_OFFSET_BITS=64."Elliott Hughes2018-01-231-0/+1
|\ \ \ \ | |/ / / |/| | |
| * | | Build toolbox with _FILE_OFFSET_BITS=64.Elliott Hughes2018-01-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 32-bit devices still exist... Bug: http://b/72335947 Test: builds Change-Id: Ia644640f19ad9d9160554e3fe329b3ce8e585c66
* | | | Merge "Make vendor_init check SELinux before setting properties"Tom Cherry2018-01-235-188/+236
|\ \ \ \ | |_|/ / |/| | |
| * | | Make vendor_init check SELinux before setting propertiesTom Cherry2018-01-225-188/+236
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finishing a TODO from vendor_init, check SELinux permissions before setting properties in vendor_init. Bug: 62875318 Test: N/A Change-Id: I3cb6abadd2613ae083705cc6b9c970587b6c6b19
* | | | Merge "Fix null ptr dereference if jit debug not enabled."Christopher Ferris2018-01-231-1/+3
|\ \ \ \
| * | | | Fix null ptr dereference if jit debug not enabled.Christopher Ferris2018-01-221-1/+3
| | |_|/ | |/| | | | | | | | | | | | | | Test: No crash when a jit debug object is not instantiated. Change-Id: Ic4350a10258459ead7c5679ceb84372f1084f0ad
* | | | Merge "Initial commit for usb daemon"Badhri Jagan Sridharan2018-01-223-0/+77
|\ \ \ \
| * | | | Initial commit for usb daemonBadhri Jagan Sridharan2018-01-163-0/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | usbd checks whether adb is enabled by default, if yes, would start adbd and would call into usb hal to configure usb gadget stack. Bug: 63669128 Test: Verify that adb gets configured when enabled Change-Id: If6d06cdadd6d93f181d56619142cbbb04d39a5cd
* | | | | Merge "ld.config.txt: Move vendor vndk to vndk namespace"Logan Chien2018-01-221-14/+14
|\ \ \ \ \
| * | | | | ld.config.txt: Move vendor vndk to vndk namespaceLogan Chien2018-01-211-14/+14
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit moves /{odm,vendor}/lib[64]/vndk[-sp] to vndk namespace so that vndk extension can override vndk libs from /system/lib[64]/vndk[-sp]. Bug: 69824336 Test: Create libutils_ext locally and it can be called from android.hardware.nfc@1.0-service. Change-Id: Id63e58d665fa41eda85950ee1d16fe06c35cd7d3
* | | | | Merge "Add force_suspend function"Treehugger Robot2018-01-224-57/+112
|\ \ \ \ \ | |_|_|_|/ |/| | | |
| * | | | Add force_suspend functionSteve Paik2018-01-194-57/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL implements a simple force_suspend(). This function takes a timeoutMs argument that is currently ignored. It also uses a two-stage init process that spawns the suspend_thread when autosuspend is in use. Follow-up CLs will: - Implement file locking to prevent multiple libsuspend instances from starting multiple suspend threads in the system. - Fully implement timout for force_suspend. - Integrate force_suspend with suspend_thred. Bug: 70669809 Test: autosuspend still works Change-Id: I6b2c72d0c61d1bec6db0f0b28481ffe0e20ec615
* | | | | Merge "Init remove direct calls to light sys nodes."Treehugger Robot2018-01-221-19/+9
|\ \ \ \ \ | |_|_|_|/ |/| | | |
| * | | | Init remove direct calls to light sys nodes.Steven Moreland2018-01-191-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are halified. Instead launch blank_screen which does the same task w/o init itself having binder dependencies. Bug: 70846424 Test: manual + reboot appears similar Change-Id: If8b2a56cbc31077122ea81406721b06034e4498f
* | | | | Merge "Move all of init to libinit"Tom Cherry2018-01-226-83/+67
|\ \ \ \ \ | |_|_|/ / |/| | | |
| * | | | Move all of init to libinitTom Cherry2018-01-196-83/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'd be not doing this for a while since some of this code doesn't compile on host and libinit previously did. But after realizing the property_service.cpp (libinit) references symbols in init.cpp (init) and seeing a new linker error crop up due to that, it's time to make the fix. My only hold out previously was that libinit compiled on host bionic and some of init (builtins.cpp, etc) do not, however given that we don't actually have host bionic support or host bionic init tests, that isn't a good reason. We can and should mock out the libraries that aren't available with host bionic when ready. Test: build, unit tests, boot Change-Id: Ie49362ddb637924efc272540a4f32b693643fcdc
* | | | | Merge "Fix regression caused by libbacktrace API change."Christopher Ferris2018-01-201-1/+1
|\ \ \ \ \
| * | | | | Fix regression caused by libbacktrace API change.Christopher Ferris2018-01-201-1/+1
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The stack dump was not printing leading zeros for data after the change to remove uintptr_t types from the libbacktrace API. Bug: 65682279 Test: Created an arm tombstone and an arm64 tombstone and verified Test: that the stack data has leading zeros. Change-Id: I1fbec2c4fa7c8b0fab18894c5628d18c5a580299
* | | | | Merge "debuggerd: add seccomp policies and tests."Josh Gao2018-01-199-3/+384
|\ \ \ \ \
| * | | | | debuggerd: add seccomp policies and tests.Josh Gao2018-01-189-3/+384
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: http://b/38508369 Test: debuggerd_test32/64 on walleye and aosp_x86_64 Change-Id: I7e69e37bcd1823d271b9f2b0a13b8c9cba9a8e84
* | | | | | Merge "Adding /data/local/traces for traceur app"Treehugger Robot2018-01-191-0/+1
|\ \ \ \ \ \
| * | | | | | Adding /data/local/traces for traceur appMax Bires2018-01-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Traceur app is being split out of shell user. Previously it logged to shell's bugreports directory. It no longer has access, so it needs a new, user-friendly file location to store trace data. Bug:68126425 Test: Traceur can write and shell can read from this directory Change-Id: I9e344973fd43eb5699f7a848524e20b06458fb77
* | | | | | | Merge "Change all uintptr_t to uint64_t in API."Christopher Ferris2018-01-1928-626/+171
|\ \ \ \ \ \ \
| * | | | | | | Change all uintptr_t to uint64_t in API.Christopher Ferris2018-01-1828-626/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to support the offline unwinding properly, get rid of the usage of non-fixed type uintptr_t from all API calls. In addition, completely remove the old local and remote unwinding code that used libunwind. The next step will be to move the offline unwinding to the new unwinder. Bug: 65682279 Test: Ran unit tests for libbacktrace/debuggerd. Test: Ran debuggerd -b on a few arm and arm64 processes. Test: Ran crasher and crasher64 and verified tombstones look correct. Change-Id: Ib0c6cee3ad6785a102b74908a3d8e5e93e5c6b33
* | | | | | | | Merge "Fix fastboot memory corruption."Treehugger Robot2018-01-192-4/+9
|\ \ \ \ \ \ \ \
| * | | | | | | | Fix fastboot memory corruption.Elliott Hughes2018-01-182-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: http://b/68664649 Test: echo 'ANDROID!' > fake.img ; fastboot -c `python -c "print 'A'*4000"` boot fake.img Change-Id: I3299e0fba24a6c1f6178c994731a94cea68f7254
* | | | | | | | | Merge "Fixing app compat issue b/72143978"Treehugger Robot2018-01-181-0/+4
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / |/| | | | | | | |
| * | | | | | | | Fixing app compat issue b/72143978Ian Pedowitz2018-01-181-0/+4
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert "Remove obsolete workaround." This reverts commit 1f3ac7583feaf591ee23fcc69d56d29613020b4f. Bug: 72143978 Bug: 24465209 Test: Tested failing case on sailfish, reverted back all CL's since Test: 3471433 for b/24465209 and apps open
* | | | | | | | Merge "Remove libziparchive dependency on libutils"David Sehr2018-01-181-36/+71
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | | |
| * | | | | | | Remove libziparchive dependency on libutilsDavid Sehr2018-01-181-36/+71
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prevent future cyclic dependency from libunwind changes. Bug: 66919073 Test: make -j 50 Change-Id: I2a4fa5b7c2c3a82db2073d0fa51940da6603be1f
* | | | | | | Merge "Add support for getting a dex pc."Christopher Ferris2018-01-1810-81/+191
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | |
| * | | | | | Add support for getting a dex pc.Christopher Ferris2018-01-1710-81/+191
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: - Change the register type from int16_t to uint32_t for the location data and the Eval processing. This is because the special dex pc is > 65535. - Add the ability for Dwarf register location information to point to a register that is itself a Dwarf location register. - Add dex_pc to the frame information. - Modify the unwind tool to print the dex pc if non-zero. This does not implement the printing of the dex information in anything but the unwind tool. It's not the final form of this printing. Bug: 72070049 Test: Ran new unit tests. Test: Dumped stack while in interpreter running 137-cfi art test and Test: verified dex pc is set to non-zero. Change-Id: I6ce8a6b577fb4f92abacbd433b1f68977e272542