summaryrefslogtreecommitdiffstats
path: root/libs/utils
Commit message (Collapse)AuthorAgeFilesLines
* remove libutilsAlex Ray2013-07-3140-10177/+0
| | | | | | | libutils is being moved from frameworks/native/ to system/core/ in order to facilitate native C++ platform (non-frameworks) code. Change-Id: I44089fb960591a40b8a9c30faabb10459d107d71
* Fix BlobCache_testBrian Carlstrom2013-07-311-12/+12
| | | | Change-Id: I5b20aeb4dcff80f1e18e1165b8461d20034dc1ac
* Make Flattenable not virtual (libutils)Mathias Agopian2013-07-303-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
* Merge "libutils: give BasicHashtableImpl a virtual destructor"Alex Ray2013-07-241-0/+4
|\
| * libutils: give BasicHashtableImpl a virtual destructorAlex Ray2013-07-241-0/+4
| | | | | | | | Change-Id: I4ec590b060d732af5fe525670becbe778684247b
* | add static dependency on liblogColin Cross2013-07-232-0/+53
|/ | | | Change-Id: Ibf8733142d52e4ffac2e3b26932d7196fb79c5a7
* Added bitwise-or and bitwise-and to BitSetMichael Wright2013-05-302-0/+88
| | | | Change-Id: I9bbf41f9d2d4a2593b0e6d7d8be7e283f985bade
* Remove unnecessary header file.Nick Kralevich2013-05-171-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-05-091-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-05-082-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-05-0718-2698/+14
| | | | Change-Id: I6ff4cfc736751de2912c697f954e45e275f2d386
* Merge "String8: ensure static init done prior to empty string reference"Todd Poynor2013-05-071-0/+4
|\
| * String8: ensure static init done prior to empty string referenceTodd Poynor2013-05-071-0/+4
| | | | | | | | | | | | | | Avoid NULL deref on static initialization of empty String8 objects prior to libutils static init. Change-Id: I3d420041ba62b97ed8c2dfd2532a2dcd72b84ff1
* | Add new Looper API to check whether the looper is idle.Dianne Hackborn2013-05-071-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
* Build a static device libutilsBjorn Bringert2013-04-261-5/+20
| | | | | | | This is needed to make tools such as aapt more compatible when built for the device. Change-Id: I1261d47b6e24595f1be547b9202892863f66a1de
* am dbbf209e: am 7133f863: Merge "improved CallStack a bit" into jb-mr2-devMathias Agopian2013-03-222-10/+13
|\ | | | | | | | | * commit 'dbbf209e66947b7c1f52d90558873ed3ec0591d7': improved CallStack a bit
| * improved CallStack a bitMathias Agopian2013-03-212-10/+13
| | | | | | | | | | | | | | - added a ctor that updates and dumps the stack immediately - added a "logtag" parameter to dump() Change-Id: Ie51c256071d282591752243bdb4f68cf9ff8829d
* | am 656a6780: am 9cd766a5: disable RefBase consistency checks (NDEBUG)Mathias Agopian2013-03-201-1/+1
|\ \ | |/ | | | | | | * commit '656a6780b5714c8667f604d7925729325d1cbcef': disable RefBase consistency checks (NDEBUG)
| * disable RefBase consistency checks (NDEBUG)Mathias Agopian2013-03-191-1/+1
| | | | | | | | | | Bug: 8328715 Change-Id: Ib57646ff909fd8744610f37f3b50d90d884dff31
* | am dd3fcd2e: am 4e37ddff: Fix a crasher with RefBase debugging and vectors ↵Mathias Agopian2013-03-201-9/+15
|\ \ | |/ | | | | | | | | | | of wp<> * commit 'dd3fcd2e583f5aff7ef390442fe4ed6395d4cc4c': Fix a crasher with RefBase debugging and vectors of wp<>
| * Fix a crasher with RefBase debugging and vectors of wp<>Mathias Agopian2013-03-191-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
* | am 364a1f95: am ca987c87: Merge "A few tweaks to RefBase debugging" into ↵Mathias Agopian2013-03-191-17/+11
|\ \ | |/ | | | | | | | | | | jb-mr2-dev * commit '364a1f95786746118d62c90279aa3dd8eb93db8d': A few tweaks to RefBase debugging
| * A few tweaks to RefBase debuggingMathias Agopian2013-03-181-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
* | am df608eb1: am ce7e2781: Merge "Add Vector::resize()" into jb-mr2-devJesse Hall2013-03-171-0/+10
|\ \ | |/ | | | | | | * commit 'df608eb15d3b90d2e71e07baaa6de423c29769c8': Add Vector::resize()
| * Add Vector::resize()Jesse Hall2013-03-151-0/+10
| | | | | | | | | | Bug: 8384764 Change-Id: Icee83d389f3e555eba7d419b64c8d52a9aa21b8b
* | am 5f72d05a: am 1791eefd: fix a couple race-conditions in RefBase::promote()Dianne Hackborn2013-03-151-26/+67
|\ \ | |/ | | | | | | * commit '5f72d05a01d9b7a1bd6d2a2a269b80facd206066': fix a couple race-conditions in RefBase::promote()
| * fix a couple race-conditions in RefBase::promote()Dianne Hackborn2013-03-141-26/+67
| | | | | | | | | | Bug: 8390295 Change-Id: I7a48e3bf5b213cc1da2b8e844c6bb37ee24cb047
* | am 9ac559b5: am f795852b: temporary: enable ASSERTs in RefBaseMathias Agopian2013-03-121-0/+1
|\ \ | |/ | | | | | | * commit '9ac559b58c49a43ed9468422feef0ae500340efe': temporary: enable ASSERTs in RefBase
| * temporary: enable ASSERTs in RefBaseMathias Agopian2013-03-111-0/+1
| | | | | | | | | | | | | | this is in an attempt to get more data on bug 8328715. Change-Id: I9333a67c2d7f67f4d9b2fc5eb1ad8a7b2d1c6dcb
* | am c75412dc: am dbca4a0e: Merge "Add Thread::isRunning and ↵Romain Guy2013-03-111-0/+5
|\ \ | |/ | | | | | | | | | | Condition::signal(WakeUpType)" into jb-mr2-dev * commit 'c75412dcdd617423a033e4a647f43b35af1fc0c4': Add Thread::isRunning and Condition::signal(WakeUpType)
| * Merge "Add Thread::isRunning and Condition::signal(WakeUpType)" into jb-mr2-devRomain Guy2013-03-111-0/+5
| |\
| | * Add Thread::isRunning and Condition::signal(WakeUpType)Romain Guy2013-03-111-0/+5
| | | | | | | | | | | | | | | | | | | | | The signal() method is useful to choose whether to wake up one or all threads. Change-Id: I062ab6d3ddd306a9fb735549ea140e2a76eed75a
* | | am 3f27f950: am 6b2b7009: Merge changes Ibb3b6ff0,I2341e20c into jb-mr2-devMathias Agopian2013-03-081-18/+22
|\ \ \ | |/ / | | | | | | | | | | | | * commit '3f27f9503356f8f60246dd188c4dd899e8999150': rename binder services main thread to Binder_* limit number of extra binder threads in SF to 4
| * | rename binder services main thread to Binder_*Mathias Agopian2013-03-071-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
* | | am 483fbb3b: am 1f758231: Merge changes I7f696e42,I51c6df3c into jb-mr2-devMathias Agopian2013-03-071-1/+1
|\ \ \ | |/ / | | | | | | | | | | | | * commit '483fbb3befcfc5d113cf5931cbf32e59a99c21c6': Make GraphicBuffer a RefBase Fix RefBase debugging. O_CREAT must specify the mode.
| * | Fix RefBase debugging. O_CREAT must specify the mode.Mathias Agopian2013-03-061-1/+1
| |/ | | | | | | Change-Id: I51c6df3cfd59b20ca73c3edee86bc2f74dbde1b1
* | Merge "Continue removing property debug.sys.noschedgroups"Glenn Kasten2013-03-051-37/+8
|\ \ | |/ |/|
| * Continue removing property debug.sys.noschedgroupsGlenn Kasten2012-10-261-37/+8
| | | | | | | | | | | | Also 0 means gettid() for get_sched_policy() and set_sched_policy(). Change-Id: Ic12edc3df6c9b3e99eae5cffaf9f6fe56cf14043
* | Revert "try to fix win_sdk build."Nick Kralevich2013-02-021-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-02-011-1/+1
| | | | | | | | Change-Id: I55e78e339874a6d6a3381c2550556b65c7ec1ca0
* | Add NULL check to CallStack::toStringMarco Nelissen2012-12-171-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 Craik2012-12-052-0/+232
| | | | | | | | | | | | Moving from external/webkit/Source/WebCore/platform/graphics/android/utils/ Change-Id: If91830aa9b207dbc8692b2ca7c4a0b76778addd5
* | utils: clarify scoped tracing functionalityAlex Ray2012-11-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 Ray2012-11-291-45/+5
| | | | | | | | | | | | Tracing functionality has moved to cutils. Change-Id: Ie78ccc1d59dd5178f5058fbc3858a37f9adce552
* | am 41f7736a: am 434e21bf: am 3fdeb48e: Reduce emulator logspamAndy McFadden2012-11-091-2/+2
|\ \ | | | | | | | | | | | | * commit '41f7736ad1e72df8796416a82ce3cede6193d1eb': Reduce emulator logspam
| * \ am 434e21bf: am 3fdeb48e: Reduce emulator logspamAndy McFadden2012-11-091-2/+2
| |\ \ | | |/ | |/| | | | | | | * commit '434e21bfd6b14f8d99b9bcdb829e7252edd574f3': Reduce emulator logspam
| | * Reduce emulator logspamAndy McFadden2012-11-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | The emulator doesn't support systrace, but we should point that out at most once per process. Bug 7436352 Change-Id: I06b2c1ea0df6c02c11cd2496423c337f8d7c62a1
* | | Merge "Add an LRU cache plus hashing primitives"Raph Levien2012-10-295-1/+358
|\ \ \ | |/ / |/| |
| * | Add an LRU cache plus hashing primitivesRaph Levien2012-10-265-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
* | | am 04075569: Revert "Revert "put back the unused virtuals in Vector<>""Dave Burke2012-10-251-0/+19
|\ \ \ | |/ / |/| / | |/ | | * commit '04075569b565c949a6db8b4e8a9f10d281de4d9c': Revert "Revert "put back the unused virtuals in Vector<>""