summaryrefslogtreecommitdiffstats
path: root/libs
Commit message (Collapse)AuthorAgeFilesLines
* move libs/utils to libutilsAlex Ray2013-08-0240-10207/+0
| | | | Change-Id: I6cf4268599460791414882f91eeb88a992fbd29d
* Add a new utf8-to-utf16 conversion function.Dianne Hackborn2013-07-311-0/+30
| | | | Change-Id: I957c22fb219596ca4239db7a169473d3894b09eb
* Fix BlobCache_testBrian Carlstrom2013-07-311-12/+12
| | | | Change-Id: I5b20aeb4dcff80f1e18e1165b8461d20034dc1ac
* Make Flattenable not virtual (libutils)Mathias Agopian2013-07-313-43/+2
| | | | | | | | | | | | Making an object Flattenable doesn't force it to become virtual anymore. For instance, Fence and GraphicBuffer are now non-virtual classes. Also change Flatennable protocol a bit so that it updates its parameters (pointers, sizes) to make it easier to implement a flattenable in terms of other flattenables. Change-Id: Ie81dc7637180b3c2cfcbaf644f8987ca804eb891
* libutils: give BasicHashtableImpl a virtual destructorAlex Ray2013-07-301-0/+4
| | | | Change-Id: I4ec590b060d732af5fe525670becbe778684247b
* add static dependency on liblogColin Cross2013-07-302-0/+53
| | | | Change-Id: Ibf8733142d52e4ffac2e3b26932d7196fb79c5a7
* Added bitwise-or and bitwise-and to BitSetMichael Wright2013-07-302-0/+88
| | | | Change-Id: I9bbf41f9d2d4a2593b0e6d7d8be7e283f985bade
* Remove unnecessary header file.Nick Kralevich2013-07-301-1/+0
| | | | | | | | | | In b2cac4ff37ed2a3521efb307b807b12f649634b8, the last reference to property_get was removed, but the include file remained. Remove it. This is causing me unrelated problems. Change-Id: I87bbfbfa5871f6da4a1b00037a225f67bbd75881
* remove reserved virtual slotsMathias Agopian2013-07-301-19/+0
| | | | | | | these consume small amount of space (plt) in every library that links against libutils. Change-Id: I1b6b3dd9098aa5a051243f7a5dbf91cd7dcb8b2c
* new String8, String16 ctors to initialize empty static strings with static ↵Mathias Agopian2013-07-302-4/+26
| | | | | | | | | | | | | | | | linkage when libutils is statically linked, the ordering of the static initializer is not guaranteed and therefore it's unsafe to use empty static strings: e.g.: static String8 sThisStaticStringIsNotSafe; instead, this new constructor can be used: static String8 sThisStaticStringIsSafe(kEmptyString); Change-Id: Ia3daf1cab1c97d021c0ee9c2b394b5e27e8d6c0d
* libutils clean-upMathias Agopian2013-07-3018-2698/+14
| | | | Change-Id: I6ff4cfc736751de2912c697f954e45e275f2d386
* Add new Looper API to check whether the looper is idle.Dianne Hackborn2013-07-301-0/+12
| | | | | | | | This is just to support the watchdog to give it a faster way to determine if a thread is deadlocked without having to post a message to it. Change-Id: I068dc8b9387caf94fe5811fb4aeb0f9b57b1a080
* String8: ensure static init done prior to empty string referenceTodd Poynor2013-07-301-0/+4
| | | | | | | Avoid NULL deref on static initialization of empty String8 objects prior to libutils static init. Change-Id: I3d420041ba62b97ed8c2dfd2532a2dcd72b84ff1
* Build a static device libutilsBjorn Bringert2013-07-301-5/+20
| | | | | | | This is needed to make tools such as aapt more compatible when built for the device. Change-Id: I1261d47b6e24595f1be547b9202892863f66a1de
* improved CallStack a bitMathias Agopian2013-07-302-10/+13
| | | | | | | - added a ctor that updates and dumps the stack immediately - added a "logtag" parameter to dump() Change-Id: Ie51c256071d282591752243bdb4f68cf9ff8829d
* disable RefBase consistency checks (NDEBUG)Mathias Agopian2013-07-301-1/+1
| | | | | Bug: 8328715 Change-Id: Ib57646ff909fd8744610f37f3b50d90d884dff31
* Fix a crasher with RefBase debugging and vectors of wp<>Mathias Agopian2013-07-301-9/+15
| | | | | | | | | | | | | | | | | | | | | | | background: we have some code to fix-up the IDs of references when using RefBase's DEBUG_REFS when those refs are managed by arrays wp<> or sp<> (this is because wp<> / sp<> don't have a trivial ctor when DEBUG_REFS is enabled, and Vector treats them as trivial for obvious performance reasons) this is complicated by the fact that we don't want to have to recompile everything when enabling DEBUG_REFs (i.e.: the Vector code cannot know wheter it's enabled or not for its template stuff). problem: there was a bug in the fix-up code for wp<> which was trying to access the weakref_impl from the RefBase* however, this was moronic since RefBase could have been destroyed if there wasn't any more strong refs -- and this happned. Instead we need to get the weakref_impl directly from the wp<> Change-Id: Ie16e334204205fdbff142acb9faff8479a78450b
* A few tweaks to RefBase debuggingMathias Agopian2013-07-301-17/+11
| | | | | | | | | | | | | - stacks are now saved in /data/debug which must be created and writable by the user. - removed "always fatal" DEBUG_REFS option, it wasn't really needed. - DEBUG_REFS_ENABLED_BY_DEFAULT is not the default anymore (usually people want to target which refs they're tracking) Change-Id: I37fae72e9dacde6ce1fa8f7dbe2bc01b1a1b95e5
* Add Vector::resize()Jesse Hall2013-07-301-0/+10
| | | | | Bug: 8384764 Change-Id: Icee83d389f3e555eba7d419b64c8d52a9aa21b8b
* fix a couple race-conditions in RefBase::promote()Dianne Hackborn2013-07-301-26/+67
| | | | | Bug: 8390295 Change-Id: I7a48e3bf5b213cc1da2b8e844c6bb37ee24cb047
* temporary: enable ASSERTs in RefBaseMathias Agopian2013-07-301-0/+1
| | | | | | | this is in an attempt to get more data on bug 8328715. Change-Id: I9333a67c2d7f67f4d9b2fc5eb1ad8a7b2d1c6dcb
* Add Thread::isRunning and Condition::signal(WakeUpType)Romain Guy2013-07-301-0/+5
| | | | | | | The signal() method is useful to choose whether to wake up one or all threads. Change-Id: I062ab6d3ddd306a9fb735549ea140e2a76eed75a
* rename binder services main thread to Binder_*Mathias Agopian2013-07-301-18/+22
| | | | | | | | | | | 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
* Fix RefBase debugging. O_CREAT must specify the mode.Mathias Agopian2013-07-301-1/+1
| | | | Change-Id: I51c6df3cfd59b20ca73c3edee86bc2f74dbde1b1
* Revert "try to fix win_sdk build."Nick Kralevich2013-07-301-1/+1
| | | | | | | A better change was checked into system/core. See commit 941daef629bd571032851edf7ae1dce24266640e This reverts commit fa99d30ec773c5f9653d96570fb8961426bfe966.
* try to fix win_sdk build.Nick Kralevich2013-07-301-1/+1
| | | | Change-Id: I55e78e339874a6d6a3381c2550556b65c7ec1ca0
* Add NULL check to CallStack::toStringMarco Nelissen2013-07-301-1/+3
| | | | | | | CallStack::toString() has a 0 default argument, which ends up getting passed to strlen(), resulting in a crash. Change-Id: If706aff8c400983670f49cdbb66e11191ac76e0e
* Add LinearAllocatorChris Craik2013-07-302-0/+232
| | | | | | Moving from external/webkit/Source/WebCore/platform/graphics/android/utils/ Change-Id: If91830aa9b207dbc8692b2ca7c4a0b76778addd5
* utils: clarify scoped tracing functionalityAlex Ray2013-07-301-1/+1
| | | | | | | | | ScopedTrace objects were being used in place of ATRACE_NAME because of a misunderstanding of it's function. Cleared up documentation for usage. Also explicitly use global namespace for sysprop callback. Change-Id: I7c248b486b614ccdb841659ca0dcfc644fda670a
* utils: Use cutils tracing functionality.Alex Ray2013-07-301-45/+5
| | | | | | Tracing functionality has moved to cutils. Change-Id: Ie78ccc1d59dd5178f5058fbc3858a37f9adce552
* Reduce emulator logspamAndy McFadden2013-07-301-2/+2
| | | | | | | | | The emulator doesn't support systrace, but we should point that out at most once per process. Bug 7436352 Change-Id: I06b2c1ea0df6c02c11cd2496423c337f8d7c62a1
* Add an LRU cache plus hashing primitivesRaph Levien2013-07-305-1/+358
| | | | | | | | | | | | | | | This patch adds a hashtable-based LRU cache. This should be significantly higher performance than the GenerationCache it is intended to replace. It is a large part of the fix for bug 7271109 TextLayoutCache low-level performance issues. We added a new method to BasicHashtable to detect when rehashing is needed, because the internal linked list pointers would get invalidated by that rehashing. Also, the hash_type specialized to pointers had a small flaw. Change-Id: I950c2083f96519777b851dbe157100e0a334caec
* Continue removing property debug.sys.noschedgroupsGlenn Kasten2013-07-301-37/+8
| | | | | | Also 0 means gettid() for get_sched_policy() and set_sched_policy(). Change-Id: Ic12edc3df6c9b3e99eae5cffaf9f6fe56cf14043
* Revert "Revert "put back the unused virtuals in Vector<>""Dave Burke2013-07-301-0/+19
| | | | | | This reverts commit 225c66a48cdc3acef21ee380dc134449749d3cb3 Change-Id: If31a04b81052cbc7dd7bf237c07107c33066d03d
* Add TEMP_FAILURE_RETRY to ZipUtilsKenny Root2013-07-302-27/+7
| | | | Change-Id: I275c415f14eeffaf9a58d45f3ea014d766441ec3
* Add TEMP_FAILURE_RETRY around open and write callsKenny Root2013-07-301-5/+8
| | | | | Bug: 7330849 Change-Id: I9aef3c3d3a248c3eea7ca060124ad6decaa6b4da
* Update tests for new build targetKenny Root2013-07-301-27/+15
| | | | Change-Id: Ia1740d1b2c0b611c4559c5c846b12fb5c3e81b07
* Disable the use of clock_gettime for now.Ben Cheng2013-07-301-1/+9
| | | | | Bug: 7100774 Change-Id: I6ede2a37a5d485134fe419b5dc766f70ae4af9d4
* Print warnings when backwards timestamps are detected.Ben Cheng2013-07-301-5/+55
| | | | | | Bug: 7100774 Change-Id: I752fd1680b32ce33d17d6042d6c82e27d7ba9dd2
* minor SharedBuffer clean-upMathias Agopian2013-07-301-7/+7
| | | | Change-Id: If38b7ce85806ae628c00f2c938de4e3f75142543
* Revert "put back the unused virtuals in Vector<>"Mathias Agopian2013-07-301-19/+0
| | | | | | | | This reverts commit 1648d4c13ba2eff3ea14cd87ee94028458a39f97. Bug: 6977192 Change-Id: Idbb6b239aaed4fb1c054ce943f6ba06ede3492bb
* put back the unused virtuals in Vector<>Mathias Agopian2013-07-301-0/+19
| | | | | | | | | some binaries are using these private APIs and broke (as they should!) with this change. Temporarily restore the virtuals to work around this. Bug: 6977550 Change-Id: I7c37f24b16e4d586b89205c493db5169cf87e024
* Add a very simple helper function to log slow functions.Jeff Brown2013-07-302-0/+38
| | | | Change-Id: I2e2e072206d02b572a330dd25857c161b5b563bf
* improve Vector<> safety checksMathias Agopian2013-07-301-31/+22
| | | | | | | | | | - make errors that will always cause a memory corruption always fatal (for eg: KeyedVector<>::editValue{For|At}() failure) - make other errors fatal in debug mode, those that can be caught by the caller. - fix typos Change-Id: I65cc7d81035c37ce2906fc4500c50e5d5b5c49eb
* libutils cleanup: remove unused or seldom used code from misc.{cpp|h}Mathias Agopian2013-07-302-102/+19
| | | | Change-Id: I72206f16619d81887e3b85603494563faab3b445
* Add elapsedRealtimeNano(), and use CLOCK_BOOTTIME where possible.Nick Pelly2013-07-302-15/+26
| | | | Change-Id: I4231c8ca32663e6e2cb5b7c126d091f837373807
* Utils: Fix a bug in the linear transformation code.John Grossman2013-07-301-3/+6
| | | | | | | | | | | | | | | | Hand merge from ics-aah > Utils: Fix a bug in the linear transformation code. > > Fix a bug where an incorrect result would be computed if you used the > linear transformation code to do a reverse transformation (from B's > domain into A's domain) when the scaler fraction was negative. > > Change-Id: I8e5f109314d235a177ab41f65d3c4cd08cff78be > Signed-off-by: John Grossman <johngro@google.com> Change-Id: Id90e18f685c61c1a89fd91c32adcf01363b3e8f3 Signed-off-by: John Grossman <johngro@google.com>
* Support looper callbacks based on smart pointers.Jeff Brown2013-07-301-12/+36
| | | | | Bug: 6559630 Change-Id: I5a667f219f431838638acefbc9fa6afa610971bd
* Delete unused poll() code.Jeff Brown2013-07-301-139/+0
| | | | | | | We don't need this code anymore and it is just in the way. Bug: 6559630 Change-Id: I1dc9decf85d5ea1feab159c2985da6c20baffdd5
* Remove unused statistics code.Jeff Brown2013-07-301-68/+0
| | | | | Bug: 6559630 Change-Id: Iacdf4bb4c1c125c09305cbd8cb443c7c80cfc010