Commit Graph

261 Commits

Author SHA1 Message Date
Marco Nelissen 2ea926bda2 Replace IInterface::asBinder() with a static
so we can do NULL checks again, and update calls to IInterface::asBinder()
to use the new static version.

Change-Id: Ia7b10eb38ca55b72278bfd33d3bf647f338b4e6a
2014-11-14 14:01:29 -08:00
Dianne Hackborn 1f3ac8b42f am a4cff88d: Fix issue #18356768: some app process may hang at Runtime#exit...
* commit 'a4cff88d80bf1acbdbd063af88ecad83a8b9b7b4':
  Fix issue #18356768: some app process may hang at Runtime#exit...
2014-11-14 01:43:31 +00:00
Dianne Hackborn a4cff88d80 Fix issue #18356768: some app process may hang at Runtime#exit...
...in Parcel destructor

Don't use a Mutux object, just use simple posix mutex primitives,
to avoid static init/destroy order problems.

Change-Id: Ic012d94297564c0a55d58869f8276d7d10545fbc
2014-11-13 17:09:59 -08:00
Dianne Hackborn ba2e1a332e am ca69e8f2: Merge "Add tracking of parcel memory allocations." into lmp-mr1-dev
* commit 'ca69e8f2d0a1fc963bd170f9b2bf164028761323':
  Add tracking of parcel memory allocations.
2014-11-12 03:51:05 +00:00
Dianne Hackborn 7e790af756 Add tracking of parcel memory allocations.
Change-Id: I76ffed0e69ccfe70e87d98646f11d4de7c3fd980
2014-11-11 16:23:04 -08:00
Jesse Hall 06ce109470 am fee99040: Revert "Add more logging for dup(fd) failure"
* commit 'fee99040de000a64f6036a7db172fb7c68d9764a':
  Revert "Add more logging for dup(fd) failure"
2014-11-04 17:35:23 +00:00
Jesse Hall 88361aaaf4 am 8e5cf83a: Revert "Parcel: extra validation/debug code for writeDupFileDescriptor"
* commit '8e5cf83afbe2b671f96d04786cf0d0f967e342f9':
  Revert "Parcel: extra validation/debug code for writeDupFileDescriptor"
2014-11-04 17:35:23 +00:00
Jesse Hall fee99040de Revert "Add more logging for dup(fd) failure"
Underlying bug has been fixed, extra debug code no longer needed

This reverts commit 36273c991b.

Change-Id: Ia47f1ae9ee7338329bfb8d710aff57e15e944f20
2014-11-04 08:48:16 -08:00
Jesse Hall 8e5cf83afb Revert "Parcel: extra validation/debug code for writeDupFileDescriptor"
Underlying bug has been fixed, extra debug code no longer needed.

This reverts commit ccf851f108.

Change-Id: I19ad9239efdf1d8f70cd74af9b7c2ae97713208f
2014-11-04 08:47:57 -08:00
Chih-Hung Hsieh 923b0f6a67 am ac5cd96f: am dbab409c: Merge "Avoid two warnings from clang."
* commit 'ac5cd96fe24690d9e0ae823c77334b8579139aa2':
  Avoid two warnings from clang.
2014-11-04 01:58:17 +00:00
Chih-Hung Hsieh ac5cd96fe2 am dbab409c: Merge "Avoid two warnings from clang."
* commit 'dbab409c49ca5dd6686912d0b3eeb19ef1c37a3e':
  Avoid two warnings from clang.
2014-11-04 01:24:07 +00:00
Michael Lentine 078794ed37 am 98536859: Merge "Fix output of pointers for 64bit devices." into lmp-mr1-dev
* commit '9853685931298ba02066ebb50a8377ad4aa80f00':
  Fix output of pointers for 64bit devices.
2014-10-31 22:58:19 +00:00
Chih-Hung Hsieh 8e5337de2c Avoid two warnings from clang.
Clang compiler warns about undefined static functions like getReturnString
before all references are removed inside IF_LOG_COMMANDS.
To remove such warnings, we can leave those static functions defined
and the compiler will remove them at the end when they are not used.

Add a cast to long before converting from int to void*,
to avoid type cast warnings on 64 bit targets.

BUG: 17043248
Change-Id: Ica31101522279d2c8eacc90e2939767002fb827b
2014-10-31 18:38:00 +00:00
Michael Lentine fae12d4fb4 Fix output of pointers for 64bit devices.
Change-Id: I279c1cf8d4c126b98f4a92ca807ade3749d01ff0
2014-10-31 11:08:19 -07:00
Dan Albert 27b780b517 am 9cc84950: Merge "Don\'t check if this == NULL."
* commit '9cc849500df0bba42d3ed19b90c38ff1dffd2262':
  Don't check if this == NULL.
2014-10-15 22:52:51 +00:00
Dan Albert 759115cd6d am 9cc84950: Merge "Don\'t check if this == NULL."
* commit '9cc849500df0bba42d3ed19b90c38ff1dffd2262':
  Don't check if this == NULL.
2014-10-15 22:52:43 +00:00
Dan Albert 9cc849500d Merge "Don't check if this == NULL." 2014-10-15 22:45:07 +00:00
Narayan Kamath 328f9c259b am 16410d45: am 9ea09757: Fix broken error check in Parcel::readBlob
* commit '16410d458fdf9915dc8cb82b1bae3949a8100124':
  Fix broken error check in Parcel::readBlob
2014-10-10 17:00:18 +00:00
Narayan Kamath 4335d35c71 am 9ea09757: Fix broken error check in Parcel::readBlob
* commit '9ea09757fa63ad2a9bea9c846b51c1210d69c79f':
  Fix broken error check in Parcel::readBlob
2014-10-09 12:50:12 +00:00
Narayan Kamath 9ea09757fa Fix broken error check in Parcel::readBlob
mmap returns MAP_FAILED (which is -1) and not NULL on
failure.

Diagnosed by cferris.

bug: 17909809

Change-Id: I609788ebf94742ef88af002d2d3f3bc9b9e520ac
2014-10-08 17:37:38 +01:00
Jesse Hall f3b5cea662 am 366998d8: am 78639c22: Merge "Parcel: extra validation/debug code for writeDupFileDescriptor" into lmp-dev
* commit '366998d87109578eb8c33d2e94d61fe7f189beb8':
  Parcel: extra validation/debug code for writeDupFileDescriptor
2014-10-07 00:34:57 +00:00
Jesse Hall 5cc3b8b4c8 am 78639c22: Merge "Parcel: extra validation/debug code for writeDupFileDescriptor" into lmp-dev
* commit '78639c22acfa5e56d87fd6fe8340d083536b29fc':
  Parcel: extra validation/debug code for writeDupFileDescriptor
2014-10-06 22:45:57 +00:00
Jesse Hall ccf851f108 Parcel: extra validation/debug code for writeDupFileDescriptor
Temporary extra debug validation for b/17477219: a Parcel recipient is
getting a positive but invalid fd unexpectedly. Trying to track down
where it's coming from.

Debug code for bug: 17477219
Change-Id: Idb1e71621025a3928c7adc88fd44790e1abd2a01
2014-10-06 15:23:56 -07:00
Michael Lentine dea558703a am 36462d9d: Merge "Add more logging for dup(fd) failure" into lmp-dev
* commit '36462d9de00105ae46ee3dbb0f644fa6af599f97':
  Add more logging for dup(fd) failure
2014-10-02 19:44:43 +00:00
Michael Lentine df035b91df am 36462d9d: Merge "Add more logging for dup(fd) failure" into lmp-dev
* commit '36462d9de00105ae46ee3dbb0f644fa6af599f97':
  Add more logging for dup(fd) failure
2014-10-02 19:18:26 +00:00
Michael Lentine 36273c991b Add more logging for dup(fd) failure
Bug: 17477219
Change-Id: Ide0ae16d777c9af783023c705c18a93c00999147
2014-10-02 18:13:02 +00:00
Dianne Hackborn e5a59e37f2 am 5ee2c9d2: Work on issue #17656716: Unhandled exception in Window Manager
* commit '5ee2c9d20c0fbecf6b4a482eb8d8bfdf85d0d424':
  Work on issue #17656716: Unhandled exception in Window Manager
2014-10-02 00:57:48 +00:00
Dianne Hackborn e4499526ee am 5ee2c9d2: Work on issue #17656716: Unhandled exception in Window Manager
* commit '5ee2c9d20c0fbecf6b4a482eb8d8bfdf85d0d424':
  Work on issue #17656716: Unhandled exception in Window Manager
2014-09-30 20:23:02 +00:00
Dianne Hackborn 5ee2c9d20c Work on issue #17656716: Unhandled exception in Window Manager
Try to clean up the code paths coming in and out of binder IPCs to
plug any places where we could disrupt the gather flag of a thread,
causing it to keep gathering stack crawls (which is the thing that
is causing our strict mode data to become so large).

We now take care of saving and restoring this state in the core
IPC code path, not at the Java layer.

Change-Id: I73d564778da127bdce00f304225930e7f2318293
2014-09-30 11:30:03 -07:00
Dan Albert 1474f8864f Don't check if this == NULL.
Entering a method with this == NULL is undefined behavior. Clang whines
about this.

Change-Id: Ibde628395ca10dfef0d2f59e81280576f104b83c
2014-09-16 17:52:06 -07:00
Hans Boehm e03abcd61b am 4a7001ca: Merge "Work around C11 const atomic restrictions."
* commit '4a7001cae482e3c9410001360374c8fe9d5a2846':
  Work around C11 const atomic restrictions.
2014-09-12 15:54:52 +00:00
Hans Boehm c0df68bb80 Work around C11 const atomic restrictions.
Cast away the const qualifier in BBinder::findObject.  C11, unlike C++11,
does not allow loads from const atomics.  This is widely regarded as
a bug (see WG14 DR 459).  This is a hack to work around it until it's
officially fixed in the spec.

load_const_atomic was adapted from commit
1e8587a479fd8b1ce9b594298a93f517816e8f15

I don't think we want to dignify this by putting it into a header file.

Bug:17067219
Change-Id: Icbfcbda2722e6f80d2bb065a0bb3ec7634bcacb2
2014-09-11 14:49:09 -07:00
Hans Boehm 553231f65e Fix CAS argument type.
Gcc apparently doesn't check; clang does.

Bug:17067219
Change-Id: I184084a5063131dbc857c63f97e70e78a05e1a76
(cherry picked from commit 1ddaadb598)
2014-09-02 23:26:16 -07:00
Hans Boehm 08ff802151 Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""
After fixing b/16874785.

This reverts commit f010a05c7e.

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 3effababf2)
2014-09-02 16:11:46 -07:00
Hans Boehm 02a1c2cb37 am efc0b35f: Merge "Fix CAS argument type."
* commit 'efc0b35fbd256bb3e225f4a1b953d0895ee3e99a':
  Fix CAS argument type.
2014-08-19 22:28:41 +00:00
Elliott Hughes cb3b7ce1d8 am 703b60ce: Merge "Use gettid directly in binder."
* commit '703b60ce39e52d319074adf53704d33f9c16dbbd':
  Use gettid directly in binder.
2014-08-18 19:34:22 +00:00
Hans Boehm efc0b35fbd Merge "Fix CAS argument type." 2014-08-16 04:28:29 +00:00
Hans Boehm 1ddaadb598 Fix CAS argument type.
Gcc apparently doesn't check; clang does.

Bug:17067219
Change-Id: I184084a5063131dbc857c63f97e70e78a05e1a76
2014-08-19 13:42:54 -07:00
Elliott Hughes fa6ad07c4e Use gettid directly in binder.
Bug: 17048545
Change-Id: I1df378135961e085a52f6cc5694ad74cd73aac19
2014-08-18 10:38:38 -07:00
Hans Boehm dc1fb90857 am a0187a9c: Merge "Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use."""""
* commit 'a0187a9c83cb042b4cb92dac59214247bb7affcf':
  Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""
2014-08-13 00:19:23 +00:00
Hans Boehm 3effababf2 Revert "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""
After fixing b/16874785.

This reverts commit f010a05c7e.

Change-Id: I1645ca5d6f60595bf5d388913665ce4b8780b26d
2014-08-12 22:56:00 +00:00
Hans Boehm d87319ddc8 am f491f497: Merge "Revert "Revert "Revert "Remove incorrect android_atomic_...64 use.""""
* commit 'f491f497b2a4ba5a0ec60b291cce4ffb3be3d33c':
  Revert "Revert "Revert "Remove incorrect android_atomic_...64 use."""
2014-08-09 02:50:38 +00:00
Hans Boehm f010a05c7e Revert "Revert "Revert "Remove incorrect android_atomic_...64 use."""
This reverts commit 66629e0de5.

Change-Id: Ic298b345d0e500d18e4297b00e755ce3340f13fb
2014-08-09 01:17:13 +00:00
Hans Boehm e0b96dbf2a am 6e5316b1: Merge "Revert "Revert "Remove incorrect android_atomic_...64 use."""
* commit '6e5316b1dac10bed0d81f4b2942e4a8749cd67b2':
  Revert "Revert "Remove incorrect android_atomic_...64 use.""
2014-08-09 00:38:27 +00:00
Hans Boehm 66629e0de5 Revert "Revert "Remove incorrect android_atomic_...64 use.""
This reverts commit 9dc5c269f7.
Adds a stdint.h include in case stdatomic.h stops including that.

Change-Id: If3dd1db1f1132c0f2dc1efb0a44617d3f36d7cfb
2014-08-08 17:14:30 -07:00
Hans Boehm 9e0ef391e8 am 735082ea: Merge "Revert "Remove incorrect android_atomic_...64 use.""
* commit '735082ea156d91cf72c241e9134abc22038c8f13':
  Revert "Remove incorrect android_atomic_...64 use."
2014-08-06 22:56:57 +00:00
Hans Boehm 9dc5c269f7 Revert "Remove incorrect android_atomic_...64 use."
This reverts commit 88b7541d68.

Change-Id: Ie701c308451a3697bb167aff119318b932133f90
2014-08-06 22:45:13 +00:00
Hans Boehm 52bfb70cf8 am c11eca81: Merge "Remove incorrect android_atomic_...64 use."
* commit 'c11eca81e66892eb62a03b4553055197d122fe5b':
  Remove incorrect android_atomic_...64 use.
2014-08-06 21:21:05 +00:00
Chong Zhang 2cbba477be add noteResetVideo/Audio to IBatteryStats
Bug: 12979595
Change-Id: Ida474e539a3af0a85ec157a66bbf986430c8020e
2014-07-23 21:51:56 +00:00
Hans Boehm 88b7541d68 Remove incorrect android_atomic_...64 use.
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.

Bug: 16513433
Change-Id: Ibabb88d05025187ee1ce6c7f1aa670b133a547f8
2014-07-23 11:35:13 -07:00