summaryrefslogtreecommitdiffstats
path: root/include/binder
Commit message (Collapse)AuthorAgeFilesLines
* Add tracking of parcel memory allocations.Dianne Hackborn2014-11-111-1/+5
| | | | Change-Id: I76ffed0e69ccfe70e87d98646f11d4de7c3fd980
* Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""Hans Boehm2014-09-021-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | After fixing b/16874785. This reverts commit f010a05c7e9a23b6083294aff4a8183ab01f686e. Original comment, which actually describes the effect of this: Change the mExtras field in Binder.h to be a stdatomic.h atomic value, and replace references to it with proper stdatomic.h calls. This removes one of a small number of remaining 64 bit android_atomic references. It also replaces the erroneously non-atomic read accesses to mExtras. It would be better if this used the C++11 <atomic> facility, but we don't quite have that yet. Fixes Bug:16513433 Change-Id: I1645ca5d6f60595bf5d388913665ce4b8780b26d (cherry picked from commit 3effababf2980d029339522fdc914bdeb913d99b)
* add noteResetVideo/Audio to IBatteryStatsChong Zhang2014-07-231-0/+4
| | | | | Bug: 12979595 Change-Id: Ida474e539a3af0a85ec157a66bbf986430c8020e
* update battery status for audio/videoChong Zhang2014-07-221-0/+8
| | | | | | Bug: 12979595 Change-Id: Ic8e8d625becc6d1050f840ad63b7423f388eeba3
* Remove Parcel::writeIntPtr.Narayan Kamath2014-06-121-1/+0
| | | | | | | | All uses of this API have been removed. It should never have been made public in the first place. bug: 15424960 Change-Id: Id07d24ec95b2b393e6da138a7e8a9a4ecebeca94
* am d09b2acd: am 033bdd72: Merge "Remove global variables from ProcessState."Narayan Kamath2014-04-031-11/+0
|\ | | | | | | | | * commit 'd09b2acdc8ca706c65984956e61c0bb333cee992': Remove global variables from ProcessState.
| * am 033bdd72: Merge "Remove global variables from ProcessState."Narayan Kamath2014-04-031-11/+0
| |\ | | | | | | | | | | | | * commit '033bdd72f9f32f4bd3d282750bdc0dcfbb469959': Remove global variables from ProcessState.
| | * Remove global variables from ProcessState.Narayan Kamath2014-04-031-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These weren't really being used and they make it very hard to reason about who looks at command line arguments. Processes started via app_process (this includes all zygote forks and the system_server) can get information about command line arguments from the AndroidRuntime class, which is available via a call to AndroidRuntime::getRuntime. bug: 13647418 Change-Id: I6f92680c3619a68c6d4b0995db4cdc9adc788e36
* | | Allow creation of heaps that are read-only to partnerGlenn Kasten2014-03-181-1/+2
| | | | | | | | | | | | Change-Id: I3c2b3d9b1671da4b9d9c58dce27e291d30703b03
* | | am 793be12c: am b730a452: am f0190bff: Add support for writing byte arrays ↵Marco Nelissen2014-03-151-0/+1
|\ \ \ | |/ / | | | | | | | | | | | | | | | to parcels * commit '793be12c0f5a7878d1085e94e58a9c36c84f0911': Add support for writing byte arrays to parcels
| * | am b730a452: am f0190bff: Add support for writing byte arrays to parcelsMarco Nelissen2014-03-141-0/+1
| |\ \ | | |/ | |/| | | | | | | * commit 'b730a45216991cf22c39451c47393b4bccae111b': Add support for writing byte arrays to parcels
| | * Add support for writing byte arrays to parcelsMarco Nelissen2014-03-131-0/+1
| | | | | | | | | | | | | | | | | | b/13418320 Change-Id: I2285df9e9d3dc8a6a54055b13b352b81660bf45d
* | | am c93865de: am 58242fc2: Merge changes ↵Arve Hjønnevåg2014-02-032-9/+17
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ib0e5a037,I1bd7c38e,Icfc67c2a,I96c64312,I59528054, ... * commit 'c93865de80a16d3638936890fb42eb175284044b': ServiceManager: Implement PING_TRANSACTION ServiceManager: Use 32/64 bit types from new binder header Binder: Use 64 bit pointers in 32 processes if selected by the target Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true Binder: Make binder portable ServiceManager: Fix the binder interface ServiceManager: Store handles in uint32_t instead of void * ServiceManager: Generic Fixes ServiceManager: Add extra error handling ServiceManager: Fix Android.mk ServiceManager: Make use of kernel exported structures
| * | Binder: Use 64 bit pointers in 32 processes if selected by the targetArve Hjønnevåg2014-01-312-9/+13
| | | | | | | | | | | | | | | | | | Uses new kernel header where void * has been replaced by binder_uintptr_t Change-Id: Icfc67c2a279269f700343bd9246fd7cb94efe2c1
| * | Binder: Make binder portableSerban Constantinescu2014-01-311-0/+4
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes include - Binder attempts to cast pointers to a int datatype which is not sufficient on a 64-bit platform. - This patch introduces new read/write functions into Parcel that allow pointers to be written using the uintptr_t datatype for compile-time data type size selection. - Change access specifier for the methods above. - Binder uses the 64bit android_atomic_release_cas64 (aka cmpxchg) Change-Id: I595280541e0ba1d19c94b2ca2127bf9d96efabf1 Signed-off-by: Matthew Leach <matthew.leach@arm.com> Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
| * Native counterpart of new power manager methodMarco Nelissen2013-10-251-0/+1
| | | | | | | | | | | | | | | | Cherrypicked from master. b/9464621 Change-Id: I54c0ed50a57ac870da91db8589a73a2c792dbd8d
* | Native counterpart of new power manager methodMarco Nelissen2013-10-161-0/+1
| | | | | | | | Change-Id: I54c0ed50a57ac870da91db8589a73a2c792dbd8d
* | Cleanup Binder interface between sensorservice and BatteryStatsMike Lockwood2013-09-251-0/+55
| | | | | | | | Change-Id: Ia507160a2534059afe93849c8efc8407a046b50e
* | Add support for sending and receiving ParcelFileDescriptors from native ↵Mike Lockwood2013-09-051-0/+10
| | | | | | | | | | | | Binder code Change-Id: I7f308e28ebac0755628e19c9b4d0d7399341b435
* | Remove obsolete commentMarco Nelissen2013-09-041-8/+0
|/ | | | Change-Id: I8b040e4b2e968fd0754e15dcf9f899fbfe210b6e
* Make Flattenable not virtualMathias Agopian2013-07-301-9/+58
| | | | | | | | | | | | | | | | | Fallout from the Flattenable change, update all its uses. Additionnaly, fix/tighten size checks when (un)flatten()ing things. Removed the assumption by some flattenables (e.g.: Fence) that the size passed to them would be exact (it can and will be larger in some cases) The code in Parcel is a bit complicated so that we don't have to expose the full implementation (and also to keep the code smallish). Change-Id: I0bf1c8aca2a3128491b4f45510bc46667e566dde
* libbinder: include sys/uio.h instead of cutils/uio.hColin Cross2013-07-231-1/+1
| | | | | | | | libbinder is only built for the target, where bionic will provide uio, so it does not need to include the libcutils wrapper around uio for windows. Change-Id: Ifc2dd353bf7ed51bf08ec0ae91c43b12830f94ba
* Follow framework change to track started ops by proc.Dianne Hackborn2013-07-171-3/+7
| | | | Change-Id: Ibbce3bf6556f45751c74bab045b46377e56bff9b
* Make getCallingUid/Pid const.Jeff Brown2013-07-151-2/+2
| | | | Change-Id: I1853b21eaa45d85274189dfd72f73fec48d0d6b7
* binder: add polling / single-threaded operationTodd Poynor2013-07-041-0/+4
| | | | | | | This is currently safe to do only for processes that disallow any binder threads to be created: setThreadPoolMaxThreadCount(0). Change-Id: I8a27f3cf26f4d51edb7f222af487ac256cbcab65
* Bring back overloading to print String8/16.Jeff Sharkey2013-05-301-0/+5
| | | | Change-Id: Iecab20db2b8574d5f1e6fdefdc2c8d4ce6c37121
* make all libsurfaceflinger and libsensorservice symbols's visibility hiddenMathias Agopian2013-05-091-9/+10
| | | | | | | we only export the main entry-point. this saves about 150KB. Change-Id: I55eb2b6705386fdfa43860deb62f9cdd2a0982aa
* libutils clean-upMathias Agopian2013-05-073-0/+306
| | | | Change-Id: I6ff4cfc736751de2912c697f954e45e275f2d386
* Revert "Add a compatibility symbol for the MemoryBase constructor."Elliott Hughes2013-03-141-3/+0
| | | | | | | | | Cherry pick from AOSP to fix the build. See https://android-review.googlesource.com/#/c/53690/ This reverts commit 7f974ff2f317ffbf9256579109f000ec876c3037 Change-Id: I1b123f446d0ff41e11ff81d4ef5f1472b59cac93
* am 9b57ad73: am 8facd1b2: Merge "Add a compatibility symbol for the ↵Elliott Hughes2013-03-131-0/+3
|\ | | | | | | | | | | | | MemoryBase constructor." * commit '9b57ad737bceba9f8d4f5be303c70fa72be00eaf': Add a compatibility symbol for the MemoryBase constructor.
| * Add a compatibility symbol for the MemoryBase constructor.Elliott Hughes2013-03-131-0/+3
| | | | | | | | | | | | | | | | | | | | Third-party libraries are currently trying to use the MemoryBase constructor but failing because we fixed the definition of ssize_t. This is a stop-gap for users of this private API until we can get them fixed. Bug: 8253769 Change-Id: I8a19770f3252d88ee87023fde625cc6289924b0d
* | rename binder services main thread to Binder_*Mathias Agopian2013-03-072-2/+9
| | | | | | | | | | | | | | | | | | | | | | When a binder service's main thread joins the thread pool it retains its name (whatever the exec name was), which is very confusing in systrace. we now rename that thread just like its friends in the thread pool. Change-Id: Ibb3b6ff07304b247cfc6fb1694e72350c579513e
* | Fixes to native app ops servicesEino-Ville Talvala2013-02-192-4/+9
| | | | | | | | | | Bug: 8181262 Change-Id: I3d3f20453f6c6f2756c988363c5b5453ef309cb6
* | App ops: new native access API.Dianne Hackborn2013-02-123-0/+211
|/ | | | | | | | | | This is to help implementation of bug #8181262 and maybe bug #8181261 Note the current code has not yet been tested; it is only known to compile at this point. Change-Id: I489674c96d0d3fc0ddacc92611931a19a9ee5230
* fix a crasher when running out of memoryMathias Agopian2012-09-251-1/+4
| | | | | | | | | | MemoryHeapBase::getBase() returns MAP_FAILED in case or OOM, not null which is what SF was checking against. This addresses one of the issues of bug 7230543. Bug: 7230543 Change-Id: I763a88f64a2f9ff75eb139cfbaf9a1a9746c5577
* make sure Parcel handles 0-sized LightFlatenablesMathias Agopian2012-08-311-6/+12
| | | | Change-Id: Ib30a1c0228f8a938abaa0c7c8a6ba32ffd971121
* No longer need "original calling uid".Dianne Hackborn2012-08-311-2/+0
| | | | Change-Id: Ifc4a89dd088609a5a8553f6ac6553174e09e8222
* improve [un]marshalling of non-binder objectsMathias Agopian2012-08-131-0/+43
| | | | | | | | | | | | | | | | | this change introduces a new class LightFlattenable<> which is a protocol to flatten simple objects that don't require binders or file descriptors; the benefit of this protocol is that it doesn't require the objects to have a virtual table and give us a consitant way of doing this. we also introduce an implementation of this protocol for POD structures, LightFlattenablePod<>. Parcel has been update to handle this protocol automatically. Sensor, Rect, Point and Region now use this new protocol. Change-Id: Icb3ce7fa1d785249eb666f39c2129f2fc143ea4a
* split-up Client.h out of SurfaceFlinger.hMathias Agopian2012-06-181-0/+1
| | | | Change-Id: I1993bf23e417163749d886283563a93d50b361b4
* Add callback hack to find out when to reload system properties.Dianne Hackborn2012-05-091-0/+1
| | | | | | | | | | | | Every IBinder object can accept a new transaction to tell it that it might want to reload system properties, and in the process anyone can register a callback to be executed when this happens. Use this to reload the trace property. This is very much ONLY for debugging. Change-Id: I55c67c46f8f3fa9073bef0dfaab4577ed1d47eb4
* SF doesn't need more than a few binder threadsMathias Agopian2012-04-191-1/+0
| | | | Change-Id: Ic4659fb81f9990cc7caf84a496a8ae659a1d16a9
* add set thread countMathias Agopian2012-04-181-0/+2
| | | | Change-Id: I70f02908d8362a465eb8a2a24356f6989847f7ba
* get rid of MemoryHeapPmemMathias Agopian2012-02-271-79/+0
| | | | | | | | | | | MemoryHeapPmem is not used any longer. PMEM is not a supported type of memory by the system anymore. a particular device might use PMEM and need something like MemoryHeapPmem, in this case this should be implemented in device specific code (HAL). This will most likely break older no longer supported targets. Change-Id: I434e4291219950018de8b793b0403bb2d92dd5cc
* move CursorWindow from libbinder to libandroidfwMathias Agopian2012-02-271-193/+0
| | | | Change-Id: I3b304e4f74e0d0ec8b20c57296c62449c9a0f792
* Some hardening of isolated processes by restricting access to services.Dianne Hackborn2012-02-092-5/+6
| | | | | | | | | | | | | | | Services now must explicitly opt in to being accessed by isolated processes. Currently only the activity manager and surface flinger allow this. Activity manager is needed so that we can actually bring up the process; SurfaceFlinger is needed to be able to get the display information for creating the Configuration. The SurfaceFlinger should be safe because the app doesn't have access to the window manager so can't actually get a surface to do anything with. The activity manager now protects most of its entry points against isolated processes. Change-Id: I0dad8cb2c873575c4c7659c3c2a7eda8e98f46b0
* Multi-user - 1st major checkinAmith Yamasani2012-02-031-0/+2
| | | | | | | | | | | | | | | Switching activity stacks Cache ContentProvider per user Long-press power to switch users (on phone) Added ServiceMap for separating services by user Launch PendingIntents on the correct user's uid Fix task switching from Recents list AppWidgetService is mostly working. Commands added to pm and am to allow creating and switching profiles. Change-Id: I15810e8cfbe50a04bd3323a7ef5a8ff4230870ed
* am 88061d6b: am 5462bc63: Fix a leak in Parcel::writeBlob.Jeff Brown2011-11-071-1/+2
|\ | | | | | | | | * commit '88061d6b38cfb4bf374039846b753a3b21ac61e1': Fix a leak in Parcel::writeBlob.
| * am 5462bc63: Fix a leak in Parcel::writeBlob.Jeff Brown2011-11-051-1/+2
| |\ | | | | | | | | | | | | * commit '5462bc6318b4b70e7a58c66994e2bd79f59d9739': Fix a leak in Parcel::writeBlob.
| | * Fix a leak in Parcel::writeBlob.Jeff Brown2011-11-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Was mistakenly assuming that Parcel::writeFileDescriptor took ownership of the fd that was passed in. It does not! Added some comments and a default parameter to allow the caller to specify whether it wishes the Parcel to take ownership. Bug: 5563374 Change-Id: I5a12f51d582bf246ce90133cce7690bb9bca93f6
* | | Rename (IF_)LOG() to (IF_)ALOG() DO NOT MERGESteve Block2011-10-251-2/+2
|/ / | | | | | | | | | | | | See https://android-git.corp.google.com/g/#/c/141576 Bug: 5449033 Change-Id: I42575e7c29cf1c0f465c357a5c97ab118df6f473