summaryrefslogtreecommitdiffstats
path: root/cmds/app_process
Commit message (Collapse)AuthorAgeFilesLines
* app_process: change app_process a symlink of primary versionYongqin Liu2014-05-141-2/+5
| | | | | | | | | | | | | Change app_process to be a symlink to the primary version and have app_process32/app_process64 be the 32-bit/64-bit versions respectively. This will make it possible to use the primary zygote for am/pm commands and other scripts that use app_process and don't need a specific zygote. Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org> Change-Id: Ibef545994eb95ddc82101c95df613ad1d06345e6
* Fix x86 build in app_process.Narayan Kamath2014-05-011-1/+1
| | | | | | | | Look for __i386__ and not __x86__. (cherry picked from commit 47d526217b3fd0d17ba751c66d25cfaf1c6ed7cd) Change-Id: I848ba351c378e59ab6744ca1983ae4463ae75ba4
* Create arch specific cache dirs during zygote startup.Narayan Kamath2014-05-011-0/+42
| | | | | | | | | | The runtime expects them to exist before it's launched. The boot image / art files are created during the first zygote launch. (cherry picked from commit da738713e4e2120a324e8ab6fd11aa0e54a3c66e) Change-Id: I7472aa25c16a1cf95791af2bdf80ed0d73123872
* Set NO_NEW_PRIVS on zygote initNick Kralevich2014-04-291-0/+10
| | | | | | | | | | | | When app_process/zygote starts, make sure PR_SET_NO_NEW_PRIVS is set. This prevents zygote spawned apps from acquiring new privileges on exec. In particular, this allows the CTS test android.os.cts.SecurityFeaturesTest#testNoNewPrivs() to pass if ART is set as the default runtime. Change-Id: I81139cda999c7b1430242561aad28f566e9b6da0
* Fix a typo in an assertion.Elliott Hughes2014-04-231-1/+1
| | | | Change-Id: I3e97bb3cb8070c0ec0c6b97769f1da3e7b4ef8f5
* Don't compare String8s to NULL.Narayan Kamath2014-04-121-1/+1
| | | | | | | | Use String8::isEmpty instead. Note that this code path is hit only if the zygote calls ::exit, and that never happens unless the VM invocation fails. Change-Id: I0e7d3a86a79b12b2174ca3bf0dbe1904e33c041a
* Dual zygote cleanup.Narayan Kamath2014-04-101-2/+7
| | | | | | | | - Use different process names for the 32 / 64 bit zygote. - Pass command line arguments correctly. The first unmatched argument must be passed through to the java main class. Change-Id: I952ebbdbba941f118d992354b9bd0ada2dade417
* Make zygotes aware of their supported ABIs.Narayan Kamath2014-04-091-1/+19
| | | | | | | | | | Query system properties for the list of ABIs and pass it as a command line argument to ZygoteInit. Also add a new Zygote command that returns this list of ABIs to peers. Change-Id: I68034c6f63fa626911122579a011a0a25a8cda94
* Clean up argc / argv processing for runtime args.Narayan Kamath2014-04-091-40/+59
| | | | | | | | | | | | - Make copies of argc, argv before argv is potentially overwritten with the process name. - Allow multiple command line arguments to be passed to ZygoteInit (this is required for some of the 64 bit zygote work). - Add an explanatory comment about how these argments are processed. Change-Id: I752be69c5c0f97ed17d1a3dded19f46ee00929b0
* Remove ProcessState::mArgc,mArgV,mArgLenNarayan Kamath2014-04-031-22/+24
| | | | | | | | | | | | These look like historical oddities, and weren't really being used for anything useful. Process:setArgV0 was being called by android.util.Process, but that functionality can be moved directly into the implementation of that class. bug: 13647418 Change-Id: I216c8f8a4c065f0cf3a61f19f9e32decd26f93f6
* app_process: use LOCAL_MULTILIB := bothColin Cross2014-03-271-22/+3
| | | | | | | | | | | Use LOCAL_MULTILIB := both to build app_process64 instead of duplicating the build rule. Also causes PRODUCT_PACKAGES := app_process to install both versions on 64-bit platforms, as the module names for both app_process and app_process64 are now app_process. Change-Id: Ia3c3265d15475771b0cae8bace53b8fbf351c186
* build app_process64 on 64-bit targetsColin Cross2014-03-191-0/+22
| | | | | | | On 64-bit platforms builds two copies of app_process, the 32-bit app_process and 64-bit app_process64. Change-Id: I59d739b5df398ad0bd040c954c57640ff7ab3e72
* revert ADDR_COMPAT_LAYOUT workaround.Nick Kralevich2013-09-181-29/+0
| | | | | | | | | | | | | Stop working around bad applications by setting ADDR_COMPAT_LAYOUT. ADDR_COMPAT_LAYOUT is undesirable because it reduces the amount of address space available to an application. The Android emulator, in both 4.3 and 4.4, does not set ADDR_COMPAT_LAYOUT. Anyone needing to test their application on a version of Android without ADDR_COMPAT_LAYOUT can use the emulator and reproduce the failures. Change-Id: I8f753acc205798bd7f031026c7ece12d26de562c
* am 35587a0c: Merge "Don\'t set ADDR_COMPAT_LAYOUT on the emulator"Nick Kralevich2013-04-231-1/+5
|\ | | | | | | | | * commit '35587a0c47c33a8eed7817dc705dbf502f7b5b60': Don't set ADDR_COMPAT_LAYOUT on the emulator
| * Don't set ADDR_COMPAT_LAYOUT on the emulatorNick Kralevich2013-04-231-1/+5
| | | | | | | | | | | | Don't work around third party app bugs on the emulator. Change-Id: I4440fcd56b72e3a74881ddec2a469f037a060525
* | Disable tracing from ZygoteJamie Gennis2013-04-161-0/+4
| | | | | | | | | | | | | | | | | | This change disables all atrace tracing in Zygote immediately after it is initialized. This is necessary because Zygote has no way to receive notifications that the enabled trace tags have been changed. Tracing is re-enabled when other processes fork from Zygote. Change-Id: If2983858fb0c4890ba9ab041849b1c4d98f66c13
* | Add liblogYing Wang2013-04-091-0/+2
|/ | | | | Bug: 8580410 Change-Id: I746aa8258866508c3a725d0773faf4518096548f
* app_process: don't pollute the environmentNick Kralevich2013-03-151-0/+1
| | | | | | Give a hoot — don't pollute! Change-Id: I30d6c05cecab483f0e9d8063907f7bc0ef2bb104
* Never call app_main more than onceNick Kralevich2013-03-151-4/+3
| | | | | | | | | | | | Different kernels seem to handle ADDR_COMPAT_LAYOUT differently, sometimes passing it to its children, sometimes not. If it's not passed to its child successfully, we can end up in a restart loop. Instead of testing for the presence of ADDR_COMPAT_LAYOUT, use an environment variable instead, which is handled more predictably. Bug: 8392487 Change-Id: Ia531dd2abb4e1cd46f3430d844e644f53581f530
* Don't use ADDR_COMPAT_LAYOUT on the emulatorNick Kralevich2013-03-141-5/+10
| | | | | | | | | | | | | For the emulator, we want people to see memory as it actually is, not how we're hacking around buggy apps. Don't set ADDR_COMPAT_LAYOUT on the emulator. For reasons that I don't understand, personality(ADDR_COMPAT_LAYOUT) does not persist across an exec on the emulator. app_main gets into a tight loop restarting itself because of this. This change also works around that bug. Change-Id: Ia73a7d2d623c25cf39d248145d97307945d554da
* Respawn app_main if ADDR_COMPAT_LAYOUT is not setNick Kralevich2013-03-141-1/+22
| | | | | Bug: 8358800 Change-Id: Id81aa26d74dfd16a49f0ee5926ea2cdb3c2106d8
* Build /system/bin/asan/app_process.Evgeniy Stepanov2012-04-041-0/+26
| | | | Change-Id: Id3fa26a1bc0e0832bfde73dbd3acce15ecce823d
* Revert "Build /system/bin/asan/app_process."Stephen Hines2012-04-041-20/+0
| | | This reverts commit cb5c734790e1e3d8496b4c75c57e8a537784c056
* Build /system/bin/asan/app_process.Evgeniy Stepanov2012-04-031-0/+20
| | | | Change-Id: Icdfe215a7e86466a07fe0508775c89963a0a4787
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-081-1/+1
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-261-2/+2
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* Eliminate single-process mode.Jeff Brown2011-07-081-14/+6
| | | | | | Bug: 5010576 Change-Id: Id450dc83efed4897d1e4ff451530fed14457aace
* Support wrapping app processes to inject debug instrumentation.Jeff Brown2011-05-241-30/+41
| | | | | | Bug: 4437846 Change-Id: I4552501c693716b14714afb5c5248edaca9547ab
* Replace a custom AndroidRuntime::findClass with a more targeted fix.Elliott Hughes2011-04-131-20/+41
| | | | | | | This seems simpler and more contained, and I think the comment explaining why hoop-jumping is necessary is a bit clearer now. Change-Id: Ief4afd7cbb42188ed835fce23e497520bdb753a8
* Move LOG_ALWAYS_FATAL to end of app_processBrian Carlstrom2010-10-071-1/+1
| | | | | | | Since LOG_ALWAYS_FATAL is always fatal and code after it is by definition unreachable, put the call after other diagnostic output. Change-Id: Ib3a515a04125d8e4f6e8af3a6f59226e8f0dd9cd
* Add back missing shared libraries used in executables in link commands. TheseDoug Kwan2009-10-041-0/+1
| | | | | | executables have calls to some shared libraries without explicitly linking them. Currently it works as linker links these libraries via dependencies of other libraries. This is fragile and not the right thing to do.
* move libbinder's header files under includes/binderMathias Agopian2009-05-201-2/+2
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-034-0/+384
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-034-384/+0
|
* Initial ContributionThe Android Open Source Project2008-10-214-0/+384