Commit Graph

2366 Commits

Author SHA1 Message Date
Jean-Michel Trivi 1ede5537a3 Fix comment in audio definitions header
Change-Id: I08f23f3feaacf4cb39e93992fe839f1c1f084363
2015-03-24 17:17:45 -07:00
Christopher Ferris ad27dd98ae am bdabcf4c: am 730d7c53: am 8e1697e7: Merge "Fix mac sdk build."
* commit 'bdabcf4c8bd7c9b5b29e2d3af07a5fb0e2733823':
  Fix mac sdk build.
2015-03-24 05:20:50 +00:00
Christopher Ferris 730d7c530a am 8e1697e7: Merge "Fix mac sdk build."
* commit '8e1697e7528f88985a5d702af53ef5d446f65fa1':
  Fix mac sdk build.
2015-03-24 05:00:51 +00:00
Christopher Ferris fc3576f675 Fix mac sdk build.
Add include files for types and functions that were not included properly.

Change-Id: I4849f5bdf535c6eec9254228cf980c30d11a5a1b
2015-03-23 21:40:30 -07:00
Dan Albert b3edb9d3a1 am 49da340d: am 4a342186: am 9f8093f8: Merge "Move gettid() into libcutils."
* commit '49da340d9ee272ff561b95288e4390d606b22ea9':
  Move gettid() into libcutils.
2015-03-24 02:59:21 +00:00
Narayan Kamath 7d1c434e1f am fb50475b: am a3d3144d: am fd26252d: Merge "Remove libzipfile."
* commit 'fb50475b71c34f6dce011d80d704aac99cf6c8ae':
  Remove libzipfile.
2015-03-24 01:31:47 +00:00
Dan Albert 4a3421862e am 9f8093f8: Merge "Move gettid() into libcutils."
* commit '9f8093f88850304fd225ae612c3df960d1d247fc':
  Move gettid() into libcutils.
2015-03-23 21:19:42 +00:00
Dan Albert 7dfb61dcdc Move gettid() into libcutils.
Change-Id: Ic8a15036833e6d129b7998d954b804be391de399
2015-03-23 13:01:21 -07:00
Vineeta Srivastava 631945200e Merge "Revert "Sigh, more vendors linking against hidden APIs."" 2015-03-23 15:52:24 +00:00
Narayan Kamath a3d3144def am fd26252d: Merge "Remove libzipfile."
* commit 'fd26252da2d736236bb1d80fc2e809421f9ffa4d':
  Remove libzipfile.
2015-03-23 10:55:33 +00:00
Narayan Kamath fd26252da2 Merge "Remove libzipfile." 2015-03-23 10:49:07 +00:00
Vineeta Srivastava 995f45e30e Revert "Sigh, more vendors linking against hidden APIs."
This reverts commit 3183729816.

Change-Id: I5c041d7438b64c4c258c414ca9a133075999e1b6
2015-03-20 23:51:36 +00:00
Dan Stoza ca87790cdc Merge "DO NOT MERGE Add ANativeWindow dataSpace; update graphics formats, color spaces" 2015-03-20 18:28:00 +00:00
Narayan Kamath 766adf9f31 Remove libzipfile.
No longer used and superceded by libziparchive.

Change-Id: Iafbaa5affd0ffd4de02681c8bbe32b21c523ff49
2015-03-20 17:59:51 +00:00
Eino-Ville Talvala b93343d199 DO NOT MERGE Add ANativeWindow dataSpace; update graphics formats, color spaces
First stage of adding a new dataSpace field for ANativeWindow,
for communicating format- (and endpoint-) dependent information
about graphics buffers. For most formats, dataSpace describes the
color space of the buffer, while format describes the memory layout.

For some formats, the dataSpace may also specify that the buffer
contains depth measurements, encoded images, or other kinds of
information that is not necessarily a simple 2D image.
Rename the existing colorspace enumeration to dataspace, with an added
dataspace for depth, and sRGB gamma-corrected and linear colorspaces.

Add in a definition for Android depth point clouds as a
variable-length list of float-triplet coordinates, as the underlying
layout of buffers with format HAL_PIXEL_FORMAT_BLOB and dataSpace of
HAL_DATASPACE_DEPTH.

Also remove now-unnecessary sRGB HAL graphics formats, and remove the
alias RAW_SENSOR that was left in to ease transition to RAW16.

Cherry pick of I8797f67fb9c2b18da5975f2145303ca0bf98e62d with the
following diff to maintain source compatibility:

@@ -58,6 +58,11 @@ enum {
     HAL_PIXEL_FORMAT_RGB_565            = 4,
     HAL_PIXEL_FORMAT_BGRA_8888          = 5,

+    // Deprecated sRGB formats for source code compatibility
+    // Not for use in new code
+    HAL_PIXEL_FORMAT_sRGB_A_8888        = 0xC,
+    HAL_PIXEL_FORMAT_sRGB_X_8888        = 0xD,
+
     /*
      * 0x100 - 0x1FF
      *
@@ -189,6 +194,9 @@ enum {
      */
     HAL_PIXEL_FORMAT_RAW16 = 0x20,

+    // Temporary alias for source code compatibility; do not use in new code
+    HAL_PIXEL_FORMAT_RAW_SENSOR = HAL_PIXEL_FORMAT_RAW16,
+
     /*
      * Android RAW10 format:
      *

Change-Id: I5c5ba98b297436f950e06a181eb0ff955747680f
2015-03-19 13:19:48 -07:00
Greg Hackmann 7edc1f0a84 am 012326fb: am b3b088e6: Merge "pixelflinger: make self-contained"
* commit '012326fbe97d8d1570ab4521e697415bb6691c4a':
  pixelflinger: make self-contained
2015-03-19 19:57:44 +00:00
Greg Hackmann 38eb58d2a8 pixelflinger: make self-contained
pixelflinger should not be used for new projects and should be moved out
of system/core at some point.  As the first step, move all its headers
under system/core/libpixelflinger/include and update its Android.mk
files so they're not referring to the absolute system/core path anymore.

Change-Id: Idead273ab2c0450409d770f5402c4dba916192a9
Signed-off-by: Greg Hackmann <ghackmann@google.com>
2015-03-19 12:34:35 -07:00
Elliott Hughes 2e671e1c00 am c1e0bf0d: am 5aa097c8: Merge "Remove obsolete files from fs_config\'s list."
* commit 'c1e0bf0df36d1cd00104a0761d9fa251ebe4865c':
  Remove obsolete files from fs_config's list.
2015-03-18 18:11:49 +00:00
Elliott Hughes 3c292007c1 Remove obsolete files from fs_config's list.
Change-Id: I83716f48754de889d811d74074f9a32dc666c05e
2015-03-18 10:47:20 -07:00
Christopher Ferris 4f1bb82b8a am 38f125b8: am 837a6739: Merge "Add variable length read to Backtrace."
* commit '38f125b8c4da6ccc95f19edb3867dfa09841207d':
  Add variable length read to Backtrace.
2015-03-18 10:57:38 +00:00
Christopher Ferris 2b4a63fc6a Add variable length read to Backtrace.
Included tests for this new feature.

Changed the NULLs to nullptr in backtrace_test.

Changed UniquePtr to std::unique_ptr in backtrace_test.

Change-Id: I92375465b8f8ba84589834cc162db5915bf1be81
2015-03-17 14:56:02 -07:00
Dan Albert dbac8ffd2d Merge "Revert "Revert "Create libbase.""" 2015-03-16 21:03:19 +00:00
Dan Albert a83ba64a23 Revert "Revert "Create libbase.""
This reverts commit a7870d8816.

(cherry picked from commit c007bc3856)
2015-03-16 13:48:07 -07:00
Chet Haase a5e351cbc2 Merge "Sigh, more vendors linking against hidden APIs." 2015-03-16 20:12:10 +00:00
Paul Eastham fd46fe102a Revert "pixelflinger: make self-contained"
This reverts commit 56350fe387.

Change-Id: I4cda5773f39abd3b24df65d7bd9daaef92314b52
2015-03-16 12:46:39 -07:00
Jeff Sharkey 3183729816 Sigh, more vendors linking against hidden APIs.
Bug: 19762346
Change-Id: I6c0823bf69e3f7e854ffea7b5483d09bb7359ff6
2015-03-16 12:14:40 -07:00
Eric Laurent 4e839b98b7 Merge "Definitions for broadcast radio." 2015-03-16 18:15:50 +00:00
Greg Hackmann 6205750c75 am 3f13e2fa: am 021efd1b: Merge "pixelflinger: make self-contained"
* commit '3f13e2fa3eaecc2571159cb4e3cc7dd28d2d536e':
  pixelflinger: make self-contained
2015-03-16 18:04:05 +00:00
Greg Hackmann 021efd1bd4 Merge "pixelflinger: make self-contained" 2015-03-16 17:46:31 +00:00
Dan Albert c007bc3856 Revert "Revert "Create libbase.""
This reverts commit a7870d8816.
2015-03-16 10:08:46 -07:00
Lorenzo Colitti 3e1c17e81d Merge "Merge remote-tracking branch 'goog/mirror-m-wireless-internal-release'" 2015-03-16 12:38:33 +00:00
Nicolas Geoffray a6000e81dc am 90a968f0: am dd581695: Merge "Revert "Create libbase.""
* commit '90a968f0e3fb903aad41f6689c337a7e4a8d5c7b':
  Revert "Create libbase."
2015-03-16 11:25:38 +00:00
Nicolas Geoffray a7870d8816 Revert "Create libbase."
Breaks internal master.

This reverts commit 98ff77204c.

Change-Id: I18dc6021cb43efff8aa88486c2d980dc2b8eedba
2015-03-16 11:07:29 +00:00
Vinit Deshpande ac56e6ba1d Merge remote-tracking branch 'goog/mirror-m-wireless-internal-release'
Change-Id: I4d3d55dac794db8fa81d3048e41ac589920f43b8
2015-03-16 01:30:49 -07:00
Dan Albert 06d60af714 am 517f65da: am a68c8148: Merge "Create libbase."
* commit '517f65daef177d06d7835300a1c23ce3409c0643':
  Create libbase.
2015-03-15 22:33:53 +00:00
Elliott Hughes 51d98035b1 am c8d5e230: am f1c2ba49: Merge "Remove unused header file."
* commit 'c8d5e2307badc6bfcb76c4dec43a07d6b9d885cb':
  Remove unused header file.
2015-03-15 22:33:51 +00:00
Dan Albert 98ff77204c Create libbase.
Move StringPrintf and the string based file I/O from libutils to
libbase.

Change-Id: I0297a6063874b9d92100e0dd5123fddfbda932fe
2015-03-14 16:36:18 -07:00
Elliott Hughes c2f0ed64ce Remove unused header file.
This library no longer exists.

Change-Id: I5582b41b70691171b1ac5f2bffd623f2b2fc10e5
2015-03-14 09:28:49 -07:00
Eric Laurent 699ce298ca Definitions for broadcast radio.
Added common definitions for broadcast radio
HAL and native service implementation.

Change-Id: Id7061bcca5ac6d83a1b96ca8ccf6894c0364629c
2015-03-13 15:35:35 -07:00
Jeff Sharkey 707d4f2ee8 Merge "Define enum class for NetlinkEvent actions." 2015-03-13 20:47:47 +00:00
Jeff Sharkey e4f394087d Define enum class for NetlinkEvent actions.
This lets us use it for switch statements, and gives us stronger
type safety.

Change-Id: Idb3ad7098657a09f13c95dc7070611d35ede66ae
2015-03-13 13:27:56 -07:00
Jeff Brown e7d54f80cb Fix issues related to removing Looper callbacks after close.
When a file descriptor is closed before removing it from the
epoll set, it will normally be removed automatically from the
epoll set by the kernel.  However if there exists a duplicate
then the original file descriptor may remain in the set and
continue to receive events until all duplicates have been closed.

Unfortunately due to kernel limitations we need to rebuild the epoll
set from scratch because it may contain an old file handle that we are
now unable to remove since its file descriptor is no longer valid.
No such problem would have occurred if we were using the poll system
call instead, but that approach carries others disadvantages.

Bug: 19715279
Change-Id: If1ab8ebda0825755a416d513e888942a02ee3948
2015-03-12 19:44:49 -07:00
Greg Hackmann 56350fe387 pixelflinger: make self-contained
pixelflinger should not be used for new projects and should be moved out
of system/core at some point.  As the first step, move all its headers
under system/core/libpixelflinger/include and update its Android.mk
files so they're not referring to the absolute system/core path anymore.

Change-Id: I7acc3ef5b2e21d8ba6fe939ea8d3ec4c41959591
Signed-off-by: Greg Hackmann <ghackmann@google.com>
2015-03-12 13:02:38 -07:00
Jeff Brown 7a0310ef67 Fixed subtle bugs related to file descriptor recycling.
Added code to protect against situations that may occur when a
Looper callback has the side-effect of closing the file descriptor that
it is watching before it returns.  This code pattern is very
convenient for implementation but it does expose issues in how
the list of callbacks is maintained.  In particular, we
need to watch out for file descriptors which have been reused.

This change may resolve previously unexplained ANRs associated with
log messages such as: "Error modifying epoll events for fd 44, errno=2"

Bug: 10349083
Change-Id: I20eedf6ffbdeda382653ca0104962505194741b0
2015-03-11 15:00:36 -07:00
Jeff Brown 27e5721860 Rename Looper::isIdling() to isPolling() to resolve confusion.
The loop isn't technically idle at this time, it's just checking
whether any file descriptors have pending events.  However it's
still a good signal as to whether the loop is alive.

Bug: 19532373
Change-Id: I555c473e70ffd8a56e1b10aa60026eb674a16de9
2015-03-11 15:00:36 -07:00
Andy Hung 17e8158635 Merge "Fix comment on AUDIO_FORMAT_PCM_SUB_8_24_BIT" 2015-03-10 23:25:02 +00:00
Andy Hung 4ff72b52a2 Fix comment on AUDIO_FORMAT_PCM_SUB_8_24_BIT
Should be Q8.23 (24 bits packed in the least significant
3 bytes).

Change-Id: If5ca27c27249487e28c0be42ebdd283308ff8552
2015-03-10 16:01:49 -07:00
Eino-Ville Talvala 5938f30921 Merge "Add ANativeWindow dataSpace; update graphics formats, color spaces" 2015-03-06 22:13:06 +00:00
Mark Salyzyn ad966e88f5 am ddd1ea71: am e79201e4: am 4487c605: Merge changes I0ec0fe3e,I9e5fccba
* commit 'ddd1ea71b4260981fb4814da4b6580c16bd8bb7f':
  liblog: logprint use <endian.h>
  private: Add event payload structures to android_logger.h
2015-03-04 23:24:38 +00:00
Mark Salyzyn e79201e4cb am 4487c605: Merge changes I0ec0fe3e,I9e5fccba
* commit '4487c605eaeea2b85c8511fe915a286c3aaf4da4':
  liblog: logprint use <endian.h>
  private: Add event payload structures to android_logger.h
2015-03-04 22:44:41 +00:00
Mark Salyzyn fa1c063feb private: Add event payload structures to android_logger.h
- common android_event_header_t
- android_event_int_t ANDROID_TYPE_INT payload
- android_log_event_int_t single ANDROID_TYPE_INT event
- android_event_long_t ANDROID_TYPE_LONG payload
- android_log_event_long_t single ANDROID_TYPE_LONG event
- android_event_string_t ANDROID_TYPE_STRING payload
- android_log_event_string_t single ANDROID_TYPE_STRING event

Change-Id: I9e5fccba38e3f230c2c4ec7dec51ed110c460f95
2015-03-04 12:48:04 -08:00
Eino-Ville Talvala 03743414cb Add ANativeWindow dataSpace; update graphics formats, color spaces
First stage of adding a new dataSpace field for ANativeWindow,
for communicating format- (and endpoint-) dependent information
about graphics buffers. For most formats, dataSpace describes the
color space of the buffer, while format describes the memory layout.

For some formats, the dataSpace may also specify that the buffer
contains depth measurements, encoded images, or other kinds of
information that is not necessarily a simple 2D image.
Rename the existing colorspace enumeration to dataspace, with an added
dataspace for depth, and sRGB gamma-corrected and linear colorspaces.

Add in a definition for Android depth point clouds as a
variable-length list of float-triplet coordinates, as the underlying
layout of buffers with format HAL_PIXEL_FORMAT_BLOB and dataSpace of
HAL_DATASPACE_DEPTH.

Also remove now-unnecessary sRGB HAL graphics formats, and remove the
alias RAW_SENSOR that was left in to ease transition to RAW16.

Change-Id: I8797f67fb9c2b18da5975f2145303ca0bf98e62d
2015-03-04 11:59:51 -08:00
Erik Kline c2291a7ed3 Refactor dhcp_utils for more flexible uses.
Separate out fetching DHCP results from starting the daemon
(for either discover or renew).

Renamed dhcp_do_request() to dhcp_start().
Renamed dhcp_do_request_renew() to dhcp_start_renew().
Added new dhcp_get_results().

Callers of the prior versions of dhcp_do_request* now separately
call dhcp_get_results().

Bug: 19422416
Change-Id: I05447853d444015e6014661dda1bb177b58fe463
2015-03-02 12:26:53 +09:00
Mark Salyzyn 75a2283d6b am 8c52e3b7: am d851c80f: am ae19b631: Merge "liblog: add pstore read"
* commit '8c52e3b79f8ca9ccef5d562f16a0c275f58b8538':
  liblog: add pstore read
2015-02-26 17:42:31 +00:00
Mark Salyzyn d851c80f0d am ae19b631: Merge "liblog: add pstore read"
* commit 'ae19b63168d1b958898180979156e2a4169ee4c2':
  liblog: add pstore read
2015-02-26 17:29:05 +00:00
Mark Salyzyn 6eef417119 liblog: add pstore read
Used to pull the Android log messages after a reboot. Adding
an ANDROID_LOG_PSTORE flag to the mode parameter in calls to
android_logger_list_alloc() and android_logger_list_alloc_time().
The side effects are that android_logger_clear() and
android_logger_list_read() will react with the user space
pstore driver. Forms a companion to the pstore console logs.

Change-Id: I7bb07b87b3bf73f059a21af3f810af37c7715b6d
2015-02-26 06:37:35 -08:00
Mark Salyzyn 581a20b8ed am ac947104: am f5579498: am 110166c1: Merge "liblog: introduce ANDROID_LOG_* flags"
* commit 'ac9471041e5c2d2903ce6470a35ba5b3baf80aa0':
  liblog: introduce ANDROID_LOG_* flags
2015-02-25 18:24:17 +00:00
Mark Salyzyn f5579498d9 am 110166c1: Merge "liblog: introduce ANDROID_LOG_* flags"
* commit '110166c1dbcbe26e510ac3fdaf2e1fcc7efbcc4e':
  liblog: introduce ANDROID_LOG_* flags
2015-02-25 18:12:48 +00:00
Mark Salyzyn 2d3f38a6b8 liblog: introduce ANDROID_LOG_* flags
Move away from using POSIX open(2) flags and introduce ANDROID_LOG_* flags to
replace them. Add security by preventing random mode flags from getting into
underlying POSIX calls. ANDROID_LOG_* flags overlap POSIX O_* flag definitions.

Change-Id: Ib32bb64c287e8bf150be62242e1ba46bb37839fc
2015-02-25 17:44:18 +00:00
Narayan Kamath 9d8889c598 am f6fae931: am f9df4b13: am c40cf1ce: Merge "Remove useless refCounting from FileMap."
* commit 'f6fae93164ec8505153241b24ccce85cc4ac0f9e':
  Remove useless refCounting from FileMap.
2015-02-24 13:09:47 +00:00
Narayan Kamath f9df4b13bc am c40cf1ce: Merge "Remove useless refCounting from FileMap."
* commit 'c40cf1ce9d6910685bf2242c1db390af00684d9d':
  Remove useless refCounting from FileMap.
2015-02-24 12:56:45 +00:00
Narayan Kamath 6832a7a4e0 Remove useless refCounting from FileMap.
Nobody ever called acquire() so release() was always
equivalent to delete. Just use delete instead so that
people can use unique_ptr directly (or shared_ptr if
they really want refcounts).

Change-Id: I9e3ad5e0f6a4fcc4e02e5a2ff7ef9514fe234415
2015-02-23 15:49:43 +00:00
Andreas Gampe 9f08ce8886 am f320e8e5: am ed318bff: Merge "log.h: Fix typo"
* commit 'f320e8e53df75ba50db755c89843251e481dc696':
  log.h: Fix typo
2015-02-11 02:48:05 +00:00
Mark Salyzyn ee632f734a am 8a5198a1: am fd867303: Merge changes I420b5b8a,Ica23fe41
* commit '8a5198a1505a4dc7d4722bb58a6eb809b0dd5d2c':
  log.h: wrap android_testLog around __android_log_is_loggable
  log.h: deprecate CONDITION
2015-02-11 02:48:04 +00:00
Mark Salyzyn 2044a34ca7 am 2671ffb6: am 95f7ecbd: Merge "liblog: add __android_log_is_loggable()"
* commit '2671ffb6191aadf17cd8770ffcc235bc0591e03f':
  liblog: add __android_log_is_loggable()
2015-02-11 02:48:01 +00:00
Andreas Gampe f320e8e53d am ed318bff: Merge "log.h: Fix typo"
* commit 'ed318bff41c4515ca79a11afb97507a452e9fcd3':
  log.h: Fix typo
2015-02-10 16:53:30 +00:00
Mark Salyzyn 8a5198a150 am fd867303: Merge changes I420b5b8a,Ica23fe41
* commit 'fd867303861eb25bf7973739e71dc29b6356a336':
  log.h: wrap android_testLog around __android_log_is_loggable
  log.h: deprecate CONDITION
2015-02-10 16:53:24 +00:00
Mark Salyzyn 2671ffb619 am 95f7ecbd: Merge "liblog: add __android_log_is_loggable()"
* commit '95f7ecbd38df680c5295295bd2277f4b26865f1f':
  liblog: add __android_log_is_loggable()
2015-02-10 16:52:48 +00:00
Andreas Gampe f45bbe496f log.h: Fix typo
Change-Id: I6b5e9bc9d40e5e5ecf9f50f7392675391e6f18e6
2015-02-09 16:13:33 -08:00
Mark Salyzyn 1df92e523e log.h: wrap android_testLog around __android_log_is_loggable
- take android_testLog from the bonepile and resurrect
- android_testLog is used, and makes sense in its current context
  as a holder for Android Logging policy.
- Default level when not specified is ANDROID_LOG_VERBOSE for
  eng and userdebug, and ANDROID_LOG_DEBUG for user.

NB: Properties, which are associated with __android_log_is_loggable are
not to be adjusted in user release; it would be useful at that juncture to
return a constant of (0) for VERBOSE, and a (1) for others on user builds.
Or default level to drop to ANDROID_LOG_DEBUG for all in future.

Bug: 17760225
Change-Id: I420b5b8a94d53d664c6a8b13546ebc424a147923
2015-02-09 15:37:32 -08:00
Mark Salyzyn f5af82edf3 log.h: deprecate CONDITION
- replace CONDITION with __predict_false to match with bionic

Change-Id: Ica23fe41cf9a7ea5eaf1b8552780af9ec7827808
2015-02-09 15:25:48 -08:00
Mark Salyzyn 956870518e liblog: add __android_log_is_loggable()
- Add new liblog API __android_log_is_loggable(prio, tag, def)
- future plan to integrate this into the runtime checks and into
  the logd daemon for filtration. Inert for now.

Bug: 17760225
Change-Id: I16395b4d42acc08f0209f55a1cbf87b0b2112898
2015-02-09 22:12:59 +00:00
Christopher Ferris 14b964f52e am e6ed63e6: am c9c401e6: Merge "Move map data into backtrace data proper."
* commit 'e6ed63e610c5e6a56b04a5168e873dfa48c73aec':
  Move map data into backtrace data proper.
2015-02-09 04:13:37 +00:00
Elliott Hughes bc32de07e9 am b164b103: am 5e753100: Merge "Clean up reading and writing in init."
* commit 'b164b103ebdcb2b567079f30e38d878a21a9b632':
  Clean up reading and writing in init.
2015-02-09 04:13:02 +00:00
Christopher Ferris e6ed63e610 am c9c401e6: Merge "Move map data into backtrace data proper."
* commit 'c9c401e64ba00e8fa295cae30b2b0035fae1183a':
  Move map data into backtrace data proper.
2015-02-06 23:43:11 +00:00
Christopher Ferris c9c401e64b Merge "Move map data into backtrace data proper." 2015-02-06 23:29:00 +00:00
Christopher Ferris 12385e3ad0 Move map data into backtrace data proper.
The backtrace structure used to include a pointer to a backtrace_map_t
that represented the map data for a particular pc. This introduced a
race condition where the pointer could be discarded, but the backtrace
structure still contained a pointer to garbage memory. Now all of the map
information is right in the structure.

Bug: 19028453
Change-Id: If7088a73f3c6bf1f3bc8cdd2bb4b62e7cab831c0
2015-02-06 15:00:09 -08:00
Elliott Hughes b164b103eb am 5e753100: Merge "Clean up reading and writing in init."
* commit '5e753100c32c7b42ae4306a8023c419defd34c4e':
  Clean up reading and writing in init.
2015-02-06 22:33:18 +00:00
Elliott Hughes f682b4786a Clean up reading and writing in init.
This isn't particularly useful in and of itself, but it does introduce the
first (trivial) unit test, improves the documentation (including details
about how to debug init crashes), and made me aware of how unpleasant the
existing parser is.

I also fixed a bug in passing --- unless you thought the "peboot" and "pm"
commands were features...

Bug: 19217569
Change-Id: I6ab76129a543ce3ed3dab52ef2c638009874c3de
2015-02-06 14:20:30 -08:00
Elliott Hughes 07e0ee7cf4 am dcbeb41a: am d558530b: Merge "Fix Windows build."
* commit 'dcbeb41a673e3fa6eb8344e9c806cb8a5f7eeff5':
  Fix Windows build.
2015-02-05 20:15:04 +00:00
Elliott Hughes dcbeb41a67 am d558530b: Merge "Fix Windows build."
* commit 'd558530ba90cb6218fe8e255c71a034c3fe1ea58':
  Fix Windows build.
2015-02-05 18:51:07 +00:00
Paul McLean 9d13e782c6 Merge "Adding name field to AudioPort for enum/select API." 2015-02-05 18:13:48 +00:00
Elliott Hughes d79801d60d Fix Windows build.
Take 2. Probably should have done this in the beginning, but thought I was
being clever.

Change-Id: I85c6e487eece9bcc75f8f62c850c2d4d1ee9e908
2015-02-05 08:21:37 -08:00
Elliott Hughes 495952fef2 am 44fdd5d1: am 27d28d3b: Merge "Add a WriteStringToFile overload that cares about permissions."
* commit '44fdd5d15a8851e4053af168e7235b30a5f4d34d':
  Add a WriteStringToFile overload that cares about permissions.
2015-02-05 02:36:47 +00:00
Elliott Hughes 44fdd5d15a am 27d28d3b: Merge "Add a WriteStringToFile overload that cares about permissions."
* commit '27d28d3baff860d1fd936a5fcf2d920577c52575':
  Add a WriteStringToFile overload that cares about permissions.
2015-02-05 02:31:31 +00:00
Elliott Hughes 202f024dee Add a WriteStringToFile overload that cares about permissions.
Change-Id: I857a80b61768d4e9610bdd149eff2d9d8e48d2c0
2015-02-04 14:30:23 -08:00
Elliott Hughes 814cb64fb4 am 8a2634c2: am 55732f49: Merge "android_reboot should take a const char*."
* commit '8a2634c2ab3914abeb43e0edf46fa69852b6b15d':
  android_reboot should take a const char*.
2015-02-04 15:03:49 +00:00
Elliott Hughes 8a2634c2ab am 55732f49: Merge "android_reboot should take a const char*."
* commit '55732f49287a75f9baabe9f150443aec9234c90d':
  android_reboot should take a const char*.
2015-02-04 01:20:40 +00:00
Elliott Hughes 0068da6a93 android_reboot should take a const char*.
The kernel argument is actually a void*, but it's only read from.

Change-Id: I305c50249bf12b7fbdea4721257aed52a0372f8d
2015-02-03 15:44:16 -08:00
Elliott Hughes 25c2f84c5e am 14fcc4c6: am e44d25d6: Merge "Add Google-style StringPrintf."
* commit '14fcc4c66cbd7e55a12315d985b0723ef4a527ff':
  Add Google-style StringPrintf.
2015-02-03 23:41:33 +00:00
Elliott Hughes 14fcc4c66c am e44d25d6: Merge "Add Google-style StringPrintf."
* commit 'e44d25d64537f4ea2abcb56aabc7a5bf0731c222':
  Add Google-style StringPrintf.
2015-02-03 23:33:39 +00:00
Elliott Hughes e44d25d645 Merge "Add Google-style StringPrintf." 2015-02-03 23:23:11 +00:00
Elliott Hughes 6b3be2902d Add Google-style StringPrintf.
Change-Id: If333c28b8ed047346a2dd85e591c4bedbab874cc
2015-02-03 15:21:07 -08:00
Elliott Hughes e17fc7cf3c am c3bf8d85: am 9fc43358: Merge "Extra Win32 compatibility."
* commit 'c3bf8d85b58c4a4711983adcd6321a580d6835b1':
  Extra Win32 compatibility.
2015-02-03 22:56:42 +00:00
Elliott Hughes c3bf8d85b5 am 9fc43358: Merge "Extra Win32 compatibility."
* commit '9fc43358f72a581beb26532ea2cb1f2adc053758':
  Extra Win32 compatibility.
2015-02-03 22:36:57 +00:00
Elliott Hughes 714196d05c Extra Win32 compatibility.
Change-Id: Ibc583aba580f4fc15c243f495ead44b2ce4c6e5e
2015-02-03 14:26:58 -08:00
Elliott Hughes a803b7697f am 813d0ac1: am 6974ba4e: Merge "Add Google-style ReadFileToString and WriteStringToFile."
* commit '813d0ac13614b6199f407762f679afc9f439be7e':
  Add Google-style ReadFileToString and WriteStringToFile.
2015-02-03 20:39:30 +00:00
Elliott Hughes 813d0ac136 am 6974ba4e: Merge "Add Google-style ReadFileToString and WriteStringToFile."
* commit '6974ba4ed430ec3247c3a5c04a2263b4b04ff827':
  Add Google-style ReadFileToString and WriteStringToFile.
2015-02-03 20:33:00 +00:00
Elliott Hughes dec12b2b71 Add Google-style ReadFileToString and WriteStringToFile.
Bug: 19217569
Change-Id: I64789d3fa6777ee30a324cdf00fdc275c1230e1b
2015-02-03 12:18:11 -08:00
Elliott Hughes d3e3bfd6c0 am dbf6f33e: am 2b2b7632: Merge "Revert "Remove netcfg\'s unused options.""
* commit 'dbf6f33e84a4de9944b782ec079ba8b51f3e9c25':
  Revert "Remove netcfg's unused options."
2015-02-03 20:15:17 +00:00
Elliott Hughes dbf6f33e84 am 2b2b7632: Merge "Revert "Remove netcfg\'s unused options.""
* commit '2b2b7632f55ca73562361cf4d06e60e7b62f7ff4':
  Revert "Remove netcfg's unused options."
2015-02-03 20:09:30 +00:00
Elliott Hughes c463025a19 Revert "Remove netcfg's unused options."
This reverts commit f8e83054cb.

Change-Id: Iede772f96ff9008277df433dcbb5f6603de65283
2015-02-03 19:56:35 +00:00
Elliott Hughes d58fe3880e am b862d3e8: am 6a728fde: Merge "Remove netcfg\'s unused options."
* commit 'b862d3e8eb92323983020830f3d39240d6cfbee3':
  Remove netcfg's unused options.
2015-02-03 19:18:43 +00:00
Elliott Hughes d4e71f154e am 5b253e55: am ef89e8d1: Merge "Revert "Remove netcfg\'s unused options.""
* commit '5b253e55e0ac4d6b935036c1e8aa5151caf09ccc':
  Revert "Remove netcfg's unused options."
2015-02-03 19:18:42 +00:00
Elliott Hughes 85ed30d881 am 1ddbd76b: am 67900498: Merge "Remove netcfg\'s unused options."
* commit '1ddbd76bd8eededb5d854dc588d3cef68cdc0c69':
  Remove netcfg's unused options.
2015-02-03 19:18:41 +00:00
Elliott Hughes b862d3e8eb am 6a728fde: Merge "Remove netcfg\'s unused options."
* commit '6a728fde77d1367318c79e5b182f0cb316872a37':
  Remove netcfg's unused options.
2015-02-03 19:16:42 +00:00
Elliott Hughes 5b253e55e0 am ef89e8d1: Merge "Revert "Remove netcfg\'s unused options.""
* commit 'ef89e8d14619c68015103fd51ff75f82eeef8d61':
  Revert "Remove netcfg's unused options."
2015-02-03 19:16:42 +00:00
Elliott Hughes 1ddbd76bd8 am 67900498: Merge "Remove netcfg\'s unused options."
* commit '67900498cff54c8116b3f7afc84e046d98bb17e4':
  Remove netcfg's unused options.
2015-02-03 19:12:53 +00:00
Elliott Hughes f8e83054cb Remove netcfg's unused options.
Only "netcfg" for a list of interfaces and "netcfg <interface> dhcp" still
seem to be used.

Change-Id: Iaf499c06b09ffe5e0925339b9cd6e502f3234a86
2015-02-03 11:08:07 -08:00
Elliott Hughes ca77255c26 Revert "Remove netcfg's unused options."
This reverts commit 24c1885bc1.

Change-Id: Iaae6502e2db90d67b4275faa104cfc6a0abc65c6
2015-02-03 19:07:43 +00:00
Elliott Hughes 24c1885bc1 Remove netcfg's unused options.
Only "netcfg" for a list of interfaces and "netcfg <interface> dhcp" still
seem to be used.

Change-Id: Ie0aecf5b18bd854cfb5878b6cfdd7160c9f42526
2015-02-02 14:39:42 -08:00
Paul McLean 9bc8190442 Adding name field to AudioPort for enum/select API.
Change-Id: I9e7a6476f7f2658c6ea1ac255683fefb9f598a2d
2015-02-02 12:45:38 -08:00
Dmitriy Ivanov 6458c0dc0a am bbbe9885: am 7cb19579: Merge "Add close_file flag to OpenArchiveFd()"
* commit 'bbbe988539a525e56809cc542876f63aef89fbac':
  Add close_file flag to OpenArchiveFd()
2015-02-02 19:32:02 +00:00
Dmitriy Ivanov bbbe988539 am 7cb19579: Merge "Add close_file flag to OpenArchiveFd()"
* commit '7cb19579bc22bf38e15b970f801f8065d629611d':
  Add close_file flag to OpenArchiveFd()
2015-02-02 19:14:17 +00:00
Dmitriy Ivanov 40b52b2c88 Add close_file flag to OpenArchiveFd()
* We should be able to keep fd alive after CloseArchive()

Change-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1
2015-01-30 17:57:13 -08:00
Yabin Cui 3f83554d22 am 631965a3: am e862350b: Merge "Kill HAVE_PTHREADS."
* commit '631965a32eb503dc6782a298eb534881aa3697b8':
  Kill HAVE_PTHREADS.
2015-01-28 00:42:36 +00:00
Yabin Cui 631965a32e am e862350b: Merge "Kill HAVE_PTHREADS."
* commit 'e862350bb2eb3d3eda526da7f3b6d5c2dd40a445':
  Kill HAVE_PTHREADS.
2015-01-27 22:45:14 +00:00
Yabin Cui 4a6e5a3b64 Kill HAVE_PTHREADS.
Bug: 19083585
Change-Id: Ic09eb3dd250bc5c5b63cac7998f99f5fa007f407
2015-01-27 14:23:22 -08:00
Mark Salyzyn 66d51342c8 am 982421df: am 91581f19: Merge "liblog: add pstore write"
* commit '982421df4584f5691b33444ae3e18b81d6544b6a':
  liblog: add pstore write
2015-01-24 16:57:50 +00:00
Mark Salyzyn cd7ef90e62 am f0cc42f5: am 4730328d: Merge "logd: create private/android_logger.h"
* commit 'f0cc42f525c237431aa560ff42a3e8548bfbd3f4':
  logd: create private/android_logger.h
2015-01-24 16:57:48 +00:00
Mark Salyzyn 982421df45 am 91581f19: Merge "liblog: add pstore write"
* commit '91581f19906ade01eabc6e10a7dac209e710117a':
  liblog: add pstore write
2015-01-23 23:59:45 +00:00
Mark Salyzyn f0cc42f525 am 4730328d: Merge "logd: create private/android_logger.h"
* commit '4730328da72ef9b7aeaefc120358155fdfd8dde8':
  logd: create private/android_logger.h
2015-01-23 23:59:43 +00:00
Zhijun He 7be3af0a7a Merge "camera: add external camera facing enum" 2015-01-23 23:57:59 +00:00
Mark Salyzyn d91ab5815d liblog: add pstore write
Used to push the Android log messages into pstore
(when available, and no propagation of error).

Change-Id: I9def8cf796d35d347f502d9745d5f42ec1200253
2015-01-23 23:33:31 +00:00
Mark Salyzyn b5f6e45d6b logd: create private/android_logger.h
- create a structure to depict the private header
  expected at logd end of socket.
- utilize this new structure instead of unscalable
  byte stream technique used to unpack in logd.

Change-Id: I2d0e5c3531c279f2dc1fbd74807210ff8d804de0
2015-01-23 23:32:11 +00:00
Zhijun He 46e0a589d5 camera: add external camera facing enum
This is to enable the external camera support.

Change-Id: Id8329e31ad0622bdc06c60e87e97c742a9719b3b
2015-01-22 13:43:09 -08:00
Christopher Ferris bd3bbff674 am d426a4e7: Merge "Move 32 bit/64 bit check into debuggerd."
* commit 'd426a4e7b62c18124827868ddbf8987aa433451b':
  Move 32 bit/64 bit check into debuggerd.
2015-01-22 00:13:01 +00:00
Christopher Ferris 9774df6134 Move 32 bit/64 bit check into debuggerd.
On 64 bit systems, calls to dump_backtrace_to_file or dump_tombstone
try and directly contact the correct debuggerd (32 bit vs 64 bit)
by reading the elf information for the executable.
Unfortunately, system_server makes a call to dump_backtrace_to_file
and it doesn't have permissions to read the executable data, so it
defaults to always contacting the 64 bit debuggerd.
This CL changes the code so that all dump requests go to the 64 bit
debuggerd, which reads the elf information and redirects requests for
32 bit processes to the 32 bit debuggerd.

Testing:

- Forced the watchdog code in system_server to dump stacks and
  verified that all native stacks are dumped correctly.
- Verified that dumpstate and bugreport still properly dump the native
  processes on a 64 bit and 32 bit system.
- Intentionally forced the 64 bit to 32 bit redirect to write only a
  byte at a time and verified there are no errors, and no dropped data.
- Used debuggerd and debuggerd64 to dump 32 bit and 64 bit processes
  seemlessly.
- Used debuggerd on a 32 bit system to dump native stacks.

Bug: https://code.google.com/p/android/issues/detail?id=97024
Change-Id: Ie01945153bdc1c4ded696c7334b61d58575314d1
2015-01-20 17:22:07 -08:00
Elliott Hughes bb604524fb am 45c4c06f: Merge "Remove unused cruft from libcutils."
* commit '45c4c06ffe6f38e0f77f37f488e07f2537eddd45':
  Remove unused cruft from libcutils.
2015-01-16 16:02:24 +00:00
Jeff Sharkey 7c42c7f84f am 9f72ef89: Merge "Extend to receive NFLOG packets."
* commit '9f72ef8944a93bd333c6c7f87c7f7d79207ae663':
  Extend to receive NFLOG packets.
2015-01-16 06:07:29 +00:00
Elliott Hughes f21717cd87 Remove unused cruft from libcutils.
Change-Id: I316d39e8e0a9aa385d8e1f37678b8bf2c03441eb
2015-01-15 21:16:03 -08:00
Jeff Sharkey 9f72ef8944 Merge "Extend to receive NFLOG packets." 2015-01-16 01:11:02 +00:00
Christopher Ferris fa41e0f5c8 Add timed versions of stack dumping functions.
Under some unknown circumstances, debuggerd could become unresponsive.
If you try and take a bugreport during this time, it will hang forever.
Adding functions that have a timeout will allow dumpstate to stop if
dumping is taking too long.

Bug: 18766581

(cherry picked from commit 5f2ff6a910)

Change-Id: I39e8e9c60209e3ef9efac795fedb8e1edce2bd3e
2015-01-15 15:34:21 -08:00
Dmitry Shmidt 2901b30a58 am 70f6dea9: Merge "android_filesystem: Remove setuid bits from tcpdump" into lmp-mr1-dev
* commit '70f6dea9d06876bc65181c40ee9e623be196fb4c':
  android_filesystem: Remove setuid bits from tcpdump
2015-01-15 20:51:35 +00:00
Jeff Sharkey 9a20e67fa6 Extend to receive NFLOG packets.
Packets captured and logged by the NFLOG target are unicast, so
extend to catch and decode them.  To avoid escaping issues, the raw
contents are passed around as hex strings.

Bug: 18335678
Change-Id: Ib7299500baa00080a1f000f9da843eb527363353
2015-01-15 12:50:59 -08:00
Dmitry Shmidt 70f6dea9d0 Merge "android_filesystem: Remove setuid bits from tcpdump" into lmp-mr1-dev 2015-01-15 20:45:06 +00:00
Dmitry Shmidt 33e4f4d81a android_filesystem: Remove setuid bits from tcpdump
Bug: 18669116

Change-Id: I25486f2fe0e994f569b788fc9f03ef6d383f54d4
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2015-01-15 10:35:54 -08:00
Christopher Ferris 844c7ccc0a am 5f2ff6a9: Add timed versions of stack dumping functions.
* commit '5f2ff6a9106083e2a79b8600a0bf6a5341c6ca38':
  Add timed versions of stack dumping functions.
2015-01-15 01:48:27 +00:00
Christopher Ferris 5f2ff6a910 Add timed versions of stack dumping functions.
Under some unknown circumstances, debuggerd could become unresponsive.
If you try and take a bugreport during this time, it will hang forever.
Adding functions that have a timeout will allow dumpstate to stop if
dumping is taking too long.

Bug: 18766581
Change-Id: I85053b8dcfe6224e2b64b4d8f7f2ef448b3cda34
2015-01-14 15:24:33 -08:00
Chih-Hung Hsieh 62ea6b268f am ce1928e9: Merge "Add required casts for clang/llvm -Wc++11-narrowing"
* commit 'ce1928e987923a276ff048c69d9a6f43f22610ba':
  Add required casts for clang/llvm -Wc++11-narrowing
2015-01-13 17:51:27 +00:00
Chih-Hung Hsieh ba8cdf99a4 Add required casts for clang/llvm -Wc++11-narrowing
system/core/include/utils/Mutex.h:134:25: error: non-constant-expression
cannot be narrowed from type 'long long' to '__kernel_time_t' (aka
'long') in initializer list [-Wc++11-narrowing]

system/core/include/utils/Mutex.h:135:26: error: non-constant-expression
cannot be narrowed from type 'long long' to 'long' in initializer list
[-Wc++11-narrowing]

Change-Id: Icb9df26aeb01617da5ab1c36987289f7c2b11954
2015-01-12 16:53:52 -08:00
Elliott Hughes 4d9ddb14c0 am ec556521: Merge "Remove HAVE_LIBC_SYSTEM_PROPERTIES and HAVE_SYSTEM_PROPERTY_SERVER."
* commit 'ec556521e23f66ea52e41a7d9540b2dec31766c5':
  Remove HAVE_LIBC_SYSTEM_PROPERTIES and HAVE_SYSTEM_PROPERTY_SERVER.
2015-01-12 22:28:11 +00:00
Elliott Hughes ae52165490 Remove HAVE_LIBC_SYSTEM_PROPERTIES and HAVE_SYSTEM_PROPERTY_SERVER.
Change-Id: I3d92dbecebd2bb449a8c4332de684919a58847ad
2015-01-12 13:56:34 -08:00
Elliott Hughes 508a1a4df7 am 9da414f9: Merge "Linux always has POSIX clocks available."
* commit '9da414f95e06979e60b48380afbf5372c1ef0ef3':
  Linux always has POSIX clocks available.
2015-01-10 00:42:40 +00:00
Elliott Hughes 76f0a84f6a Linux always has POSIX clocks available.
pixelflinger doesn't have to run on the Mac, but the Condition
code might.

Change-Id: Ib4e9b4daa6e848ffd5742959427b172d45f08e3c
2015-01-09 16:17:46 -08:00
Elliott Hughes 55410c4e62 am 4c6c6d1c: Merge "You either have winsock or <sys/sockets.h>."
* commit '4c6c6d1c7ed7d8481d717f949c18657efa5533af':
  You either have winsock or <sys/sockets.h>.
2015-01-09 22:02:26 +00:00
Elliott Hughes 3906c8511e You either have winsock or <sys/sockets.h>.
There is no third choice.

Change-Id: I8f1206f22798f747896dd53f3081cdfa4b1707c4
2015-01-09 12:21:51 -08:00
Jesse Hall ec8e7e2ccb am 7208a015: Merge "Mutex: add timedLock() method"
* commit '7208a01514284becbd32cf4dfd256e4b10448f8e':
  Mutex: add timedLock() method
2015-01-07 18:12:00 +00:00
Jesse Hall 7208a01514 Merge "Mutex: add timedLock() method" 2015-01-07 18:01:11 +00:00
Jesse Hall 601424a84f Mutex: add timedLock() method
This is not available for host builds because OSX doesn't have
pthread_mutex_timedlock() or equivalent.

Bug: 18842510
Change-Id: I072e74ab1a6f770fd245828b39c5f954dda1113b
2015-01-07 08:06:51 -08:00
Mark Salyzyn aeeaee58a1 am e892279b: Merge "liblog: Add log_time += operator"
* commit 'e892279b3a29060d873bd65e55b3a613e61fe04d':
  liblog: Add log_time += operator
2015-01-05 20:24:57 +00:00
Mark Salyzyn decd92945f liblog: Add log_time += operator
Change-Id: I1d2987b6cb333fc344d4fee1b7bb25f32a4143c6
2015-01-05 16:27:54 +00:00
Dan Albert 977b84140f am da4f30c5: Merge "Remove incompatible Unicode compatibility types."
* commit 'da4f30c5b451091068ecb5f6fa3697a7dd6bb7df':
  Remove incompatible Unicode compatibility types.
2014-12-12 02:53:25 +00:00
Dan Albert da4f30c5b4 Merge "Remove incompatible Unicode compatibility types." 2014-12-12 02:42:30 +00:00
Chih-Hung Hsieh d3653c90cd am 3570072c: Merge "Use full qualified name in macros."
* commit '3570072c362fc379ac83bcae6d9ff43db06ffcfb':
  Use full qualified name in macros.
2014-12-11 19:54:27 +00:00
Chih-Hung Hsieh c777f213b3 Use full qualified name in macros.
The ANDROID_SINGLETON_STATIC_INSTANCE is used in some files
out of the android namespace. If it does not use full qualified
names, users of this macro will need to use it inside the 'android'
namespace to avoid warnings from clang compiler.

Change-Id: Ie4d4ba2b57fdc72d0deb3b7c2326304a44a1300f
2014-12-11 11:19:57 -08:00
Eric Laurent 4108bccbe8 am 4fca5918: audio: add usage "virtual source" to audio attributes.
* commit '4fca59181c838b91572d1b57cb74b26d0a70528f':
  audio: add usage "virtual source" to audio attributes.
2014-12-10 22:20:09 +00:00
Eric Laurent 4fca59181c audio: add usage "virtual source" to audio attributes.
Bug: 16006090.
Change-Id: I2d22b52e97095b57a6508b82bd11e27f860bb2e7
2014-12-09 12:13:13 -08:00
Eric Laurent be7bb9004c am 47f52f24: audio: new stream types
* commit '47f52f247d6d895878b831de448f19b98225515d':
  audio: new stream types
2014-11-26 12:01:50 +00:00
Elliott Hughes bbd3b7edd7 am c0ac9313: Merge "Only Windows doesn\'t have <sys/uio.h>."
* commit 'c0ac9313e942fb7d3a027cec41904c18d8841521':
  Only Windows doesn't have <sys/uio.h>.
2014-11-25 21:55:37 +00:00
Elliott Hughes 111e3d3d9c Only Windows doesn't have <sys/uio.h>.
This should probably be in libcutils instead, so code that needs to
care about Windows can use readv/writev.

Change-Id: I7c2ceec3f742cee0e44f69fd4c88459376bd0e08
2014-11-25 13:27:43 -08:00
Elliott Hughes a0959e90f5 am 8eb770d3: Merge "Remove long-dead readtty."
* commit '8eb770d37cd9470630fdbe496f22b7a04549fef7':
  Remove long-dead readtty.
2014-11-25 19:03:12 +00:00
Elliott Hughes b120134bd1 Remove long-dead readtty.
Change-Id: I15ae14542214a3802d43892da0d03cfb33e63c96
2014-11-24 12:01:21 -08:00
Eric Laurent 47f52f247d audio: new stream types
Added stream types for internal use by audio policy
and audio flinger.

Bug: 18067208.
Change-Id: I90fd4df9ed5e0d8fb8c220d67e95fd0e32a06f14
2014-11-24 10:41:21 -08:00
Elliott Hughes b741221117 am 456661e3: Merge "Fix Mac build."
* commit '456661e38cefe1afbf640036f710f0d481b64bf9':
  Fix Mac build.
2014-11-22 15:42:41 +00:00
Elliott Hughes 8c275ffcba Fix Mac build.
Change-Id: Iae697ae257cf4b1d675e2b758dd31d5a6a71ae4d
2014-11-22 07:25:02 -08:00
Elliott Hughes e79cd67cfd am 0101b06f: Merge "Kill HAVE_BIG_ENDIAN, HAVE_ENDIAN_H, and HAVE_LITTLE_ENDIAN."
* commit '0101b06fa6f9863ee87e89757e70900c3a0e7bfc':
  Kill HAVE_BIG_ENDIAN, HAVE_ENDIAN_H, and HAVE_LITTLE_ENDIAN.
2014-11-22 08:01:20 +00:00
Elliott Hughes 97ac0e1bb4 Kill HAVE_BIG_ENDIAN, HAVE_ENDIAN_H, and HAVE_LITTLE_ENDIAN.
Change-Id: I9e25ac9d27e95b04fb8bf7a66c619af0139d8b8f
2014-11-21 23:10:45 -08:00
Dan Albert 5ef3bcc768 am 5d8a5ade: Merge "Add a pre-C++11 constexpr compatibility macro."
* commit '5d8a5ade620be65e0e658dbb99e66398f3ffdc74':
  Add a pre-C++11 constexpr compatibility macro.
2014-11-20 20:21:55 +00:00
Dan Albert c59932f937 Remove incompatible Unicode compatibility types.
As well intentioned as these were, uint16_t and C++11's char16_t are
_not_ actually compatible. They are not implicitly convertible, and
they mangle differently, so they are not even ABI compatible. In our
now wonderous world of C++11, no one should be using these, so just
kill them.

Bug: 18300613
Change-Id: I06d92d7f1d937dd94a620874323d4c50eb6a31bd
2014-11-20 11:54:39 -08:00
Dan Albert e4c649c9fc Add a pre-C++11 constexpr compatibility macro.
Needed for cases where something should be constexpr if possible, but
not being constexpr is fine if in pre-C++11 code (such as a const
static float member variable).

Bug: 18466763
Change-Id: I635d062575ba2fbc4cbe3a89f730128c404d95e1
2014-11-20 10:47:55 -08:00
Elliott Hughes 83ebca0290 am ac252357: Merge "Remove atomic-inline.h."
* commit 'ac252357bb15cdeb7d4637a1cfeaa76810514715':
  Remove atomic-inline.h.
2014-11-17 23:16:44 +00:00
Elliott Hughes c3914d2be2 Remove atomic-inline.h.
Change-Id: I3ac0229b9c516744e6a9c9d9e795b43bc9c5636b
2014-11-17 14:38:56 -08:00
Elliott Hughes ba96de5f65 am 3ef0460e: Merge "Remove the error-prone TARGET_CPU_SMP from system/core."
* commit '3ef0460e86f2a7c5442bcf424b8e83fdfb8e3669':
  Remove the error-prone TARGET_CPU_SMP from system/core.
2014-11-17 19:40:16 +00:00
Elliott Hughes e9ca709a73 Remove the error-prone TARGET_CPU_SMP from system/core.
This means that code that uses libcutils no longer has to ensure that
it's set ANDROID_SMP in the calling code's Android.mk for this to
function correctly.

Change-Id: I80c7ff170cd621106f34d6b74689d6b4f03e4eb7
2014-11-17 11:16:59 -08:00
Hans Boehm 0b7f368442 am 64d7117e: Merge "Second attempt to "Rewrite atomic.h to use stdatomic.h.""
* commit '64d7117efc7f7b8b477cd216a119b07041d8f406':
  Second attempt to "Rewrite atomic.h to use stdatomic.h."
2014-11-14 00:26:51 +00:00
Hans Boehm c56648948c Second attempt to "Rewrite atomic.h to use stdatomic.h."
This should not be committed until win_sdk and aarch64 builds are
fixed in the presence of this CL.

This reverts commit 2789faabfa.

We additionally remove uniprocessor support from the earlier CL,
thus avoiding a potential compiler code reordering issue.

Change-Id: I7207a5ca2efa907a6f757f172d7090a62b2311fe
2014-11-13 15:59:10 -08:00
Yabin Cui 556f43820f am 2c0839e9: Merge "kill HAVE_POSIX_FILEMAP"
* commit '2c0839e9dba6d9d282f8391c3edb14236f56618d':
  kill HAVE_POSIX_FILEMAP
2014-11-11 19:53:38 +00:00
Yabin Cui 266092c52d kill HAVE_POSIX_FILEMAP
Bug: 18315579
Change-Id: I0bd5fb946b12cb90e0c9c73a478df41609b8c3e2
2014-11-11 10:31:30 -08:00
Nick Kralevich d6520cf958 am 65a83bdf: Merge "Reserve some AIDs for OEMs"
* commit '65a83bdf2ea1643449294a23a450e5a8a5b5058c':
  Reserve some AIDs for OEMs
2014-11-10 17:51:34 +00:00
Nick Kralevich 65a83bdf2e Merge "Reserve some AIDs for OEMs" 2014-11-10 17:42:58 +00:00
Johan Redestig 60ac6364ec Reserve some AIDs for OEMs
OEMs frequently add some AIDs on their own. Reserve some range
for them to use.

Change-Id: I3c729c889c9bd3e105ae4f6fb0c04a42a10eb25c
2014-11-10 08:14:21 +01:00
Stephen Hines 96031a9985 am f02c7972: Merge "Move winsock2.h in front of a potential windows.h include."
* commit 'f02c7972560bc512552830c8110d026136a3a87f':
  Move winsock2.h in front of a potential windows.h include.
2014-11-09 09:03:31 +00:00
Dan Albert 7c7a782cad am aaa920d7: Merge "Make Unicode.h use types that match libc++."
* commit 'aaa920d7969d9dd4b9e7871f2758d9092095bead':
  Make Unicode.h use types that match libc++.
2014-11-09 09:03:30 +00:00
Stephen Hines f02c797256 Merge "Move winsock2.h in front of a potential windows.h include." 2014-11-09 07:24:43 +00:00
Stephen Hines 7e34121e39 Move winsock2.h in front of a potential windows.h include.
Files that included FileMap.h (possibly transitively), before including
ByteOrder.h (which pulls in winsock2.h directly), will experience a
compiler warning/error from the latest mingw headers. This happens because
the headers require that winsock2.h come before windows.h in all cases.
The simplest (and most error-proof) fix for now is to include winsock2.h
before this use of windows.h.

Change-Id: I33069e4c9962d9820d0ea5976554f89d7ff6307c
2014-11-08 19:30:05 -08:00
Dan Albert 2f5ad5ff86 Make Unicode.h use types that match libc++.
libc++ also defines these types for pre-C++11, and the two definitions
need to match to avoid redefinition errors.

Bug: 18300613
Change-Id: I1e9198d39f7c470f37bc6edba2dca2d499f54c9b
2014-11-08 20:22:30 +00:00
Calin Juravle 4de4e6defc resolved conflicts for merge of e3c22c41 to stage-aosp-master
Change-Id: I566aeb2e2de15813ee199d4635098029457fdf3d
2014-10-28 19:09:50 +00:00
Calin Juravle 0f31008eaf Merge "Handle code_cache dir creation in libnativebridge" into lmp-mr1-dev
automerge: 9c094da

* commit '9c094da83112bbcad37eaffecfee96ff169d84a8':
  Handle code_cache dir creation in libnativebridge
2014-10-28 18:08:02 +00:00
Calin Juravle 1402fbb135 Handle code_cache dir creation in libnativebridge
Also:

- add kPreInitiliazed state to native bridge with check transition:
kOpened->kPreInitialized->kInitialized
- made sure we free the memory for the code_cache_path
- tidy up some error messages
- tidy up tests
- add a dummy native bridge to test with

Bug: 18027433
Bug: 18097480

(cherry picked from commit f9d9e2a2d9)

Change-Id: I9ce578949dbe522d5033465df7ca49fdd3aa3cbf
2014-10-27 15:37:32 +00:00
Calin Juravle f9d9e2a2d9 Handle code_cache dir creation in libnativebridge
Also:

- add kPreInitiliazed state to native bridge with check transition:
kOpened->kPreInitialized->kInitialized
- made sure we free the memory for the code_cache_path
- tidy up some error messages
- tidy up tests
- add a dummy native bridge to test with

Bug: 18027433
Bug: 18097480

Change-Id: I39f74c93580f2e224080dd3df2ffaa9cf9f8cd9c
2014-10-27 15:03:13 +00:00
Chih-Hung Hsieh 6ea35520fd am 07f1300c: am 7979f1ce: Merge "Do not inline rarely used trace function bodies."
* commit '07f1300c4c4f7d3c0df540bf8df3443c3f4539cd':
  Do not inline rarely used trace function bodies.
2014-10-15 17:57:07 +00:00
Chih-Hung Hsieh c37387a4cd am 07f1300c: am 7979f1ce: Merge "Do not inline rarely used trace function bodies."
* commit '07f1300c4c4f7d3c0df540bf8df3443c3f4539cd':
  Do not inline rarely used trace function bodies.
2014-10-15 17:57:07 +00:00
Chih-Hung Hsieh 2d3150e736 Do not inline rarely used trace function bodies.
When atrace_* functions are inlined,
the rarely used 1024-byte buffers are allocated on stack.

BUG: 17444504
Change-Id: I773512aeb70e8b79f3803c6d59cba064d2aa65b6
2014-10-14 15:37:20 -07:00
Carson Liao 519d1cf44a am 4b0374ae: am 4c4cf467: modified AUDIO_SOURCE_FM_TUNER enum value for FM feature
* commit '4b0374ae1a97cff279f287dded14619e9579da62':
  modified AUDIO_SOURCE_FM_TUNER enum value for FM feature
2014-10-07 17:06:04 +00:00
Carson Liao 4c4cf467f5 modified AUDIO_SOURCE_FM_TUNER enum value for FM feature
Review: https://partner-android-review.git.corp.google.com/#/c/183993

    Signed-off-by: Carson Liao <carson.liao@mediatek.com>

Change-Id: I8d70b197bcdc710119031bcf622fee0c1b3b3aa7
2014-10-06 22:02:37 -07:00
Hans Boehm f381920b58 am 072877af: am 41198eea: Merge "Revert "Rewrite atomic.h to use stdatomic.h.""
* commit '072877af485d49f11e227c0d22a7bb4a341533d6':
  Revert "Rewrite atomic.h to use stdatomic.h."
2014-10-04 02:17:43 +00:00
Hans Boehm 054627df6b am 072877af: am 41198eea: Merge "Revert "Rewrite atomic.h to use stdatomic.h.""
* commit '072877af485d49f11e227c0d22a7bb4a341533d6':
  Revert "Rewrite atomic.h to use stdatomic.h."
2014-10-04 02:09:19 +00:00
Hans Boehm 2789faabfa Revert "Rewrite atomic.h to use stdatomic.h."
This reverts commit cb344d4640.

Change-Id: Ib17cd8d00695062177ce863cedc4ec7148012317
2014-10-04 00:49:06 +00:00
Hans Boehm 954fc61b6b am f5204549: am 028928fe: Merge "Rewrite atomic.h to use stdatomic.h."
* commit 'f5204549faf7310cc808bcb3676fb36268178e26':
  Rewrite atomic.h to use stdatomic.h.
2014-10-04 00:06:45 +00:00
Hans Boehm 2ac8207e50 am f5204549: am 028928fe: Merge "Rewrite atomic.h to use stdatomic.h."
* commit 'f5204549faf7310cc808bcb3676fb36268178e26':
  Rewrite atomic.h to use stdatomic.h.
2014-10-04 00:06:30 +00:00
Hans Boehm cb344d4640 Rewrite atomic.h to use stdatomic.h.
Replace atomic-inl.h with a file that just includes atomic.h.
Remove platform specific implementations.

Change-Id: If16d74fbe0af7836ed8c1296c17e13a2d0d20f64
2014-10-01 17:37:20 -07:00
jgu21 2d83ca4cc1 am b3facbfd: LibNativeBridge: Add early init & env setup
* commit 'b3facbfdecf46eb7c063b99529ab8c18a08a6b42':
  LibNativeBridge: Add early init & env setup
2014-09-29 03:37:07 +00:00
jgu21 b3facbfdec LibNativeBridge: Add early init & env setup
Add a method to set up /proc/cpuinfo with enough privileges. Set
up the environment for an app in InitializeNativeBridge().

Turn on -Wall for libnativebridge.

(cherry picked from commit 962eb40abb)
(cherry picked from commit ab0da5a9a6)
(cherry picked from commit 2f71cb24fa)
(cherry picked from commit 04054e28e2)
(cherry picked from commit 4390a63236)

Bug: 17671501
Change-Id: Id4f4127d82737b5e56a77175e1068ff5cea60f9d
2014-09-26 13:04:36 -07:00
Hochi Huang 54d5b2e670 am fcbb23ad: [AU] Update volume setting and Audio Device API 3.0
* commit 'fcbb23adc939dd27122d962e5f7e7f016259f03e':
  [AU] Update volume setting and Audio Device API 3.0
2014-09-26 00:24:11 +00:00
Hochi Huang fcbb23adc9 [AU] Update volume setting and Audio Device API 3.0
Signed-off-by: Hochi Huang <hochi.huang@mediatek.com>
Change-Id: I772584ae05e6a8d2fdc8c4a52e44ad80c3c1a4a7
2014-09-25 21:26:02 +00:00
Andreas Gampe 69974972be resolved conflicts for merge of 64884bb1 to lmp-mr1-dev-plus-aosp 2014-09-24 16:00:12 -07:00
Andreas Gampe 2a0f42b58d resolved conflicts for merge of 64884bb1 to lmp-dev-plus-aosp 2014-09-24 15:56:29 -07:00
Andreas Gampe 9d1b922725 Merge "LibNativeBridge: Add early init & env setup" 2014-09-24 22:00:06 +00:00
Eric Laurent 4c58d89452 am 62e05407: am f6cce347: audio: add HW hotword capture flag
* commit '62e05407da5c36b6c4057e613ae6d4e3068a3721':
  audio: add HW hotword capture flag
2014-09-24 04:19:16 +00:00
jgu21 ab0da5a9a6 LibNativeBridge: Add early init & env setup
Add a method to set up /proc/cpuinfo with enough privileges. Set
up the environment for an app in InitializeNativeBridge().

Turn on -Wall for libnativebridge.

Change-Id: I0b93da93251c6b4638de786bf98cf99df07c3fc2
2014-09-23 20:08:25 -07:00
Eric Laurent e6b10121ad am f6cce347: audio: add HW hotword capture flag
* commit 'f6cce347a73e3b3da9ff6698ead25b5a543ce47b':
  audio: add HW hotword capture flag
2014-09-24 02:26:33 +00:00
Elliott Hughes ed561793f3 am fbb4188c: am d559d6c7: Merge "defined(HAVE_OFF_T) is really just !defined(__APPLE__)."
* commit 'fbb4188cfac18b457801cf3e304bfa39dd29dde8':
  defined(HAVE_OFF_T) is really just !defined(__APPLE__).
2014-09-23 16:05:52 +00:00
Elliott Hughes 830b77bc5c am fbb4188c: am d559d6c7: Merge "defined(HAVE_OFF_T) is really just !defined(__APPLE__)."
* commit 'fbb4188cfac18b457801cf3e304bfa39dd29dde8':
  defined(HAVE_OFF_T) is really just !defined(__APPLE__).
2014-09-23 16:05:18 +00:00
Elliott Hughes cb3d65323d defined(HAVE_OFF_T) is really just !defined(__APPLE__).
Change-Id: I83c271bfe24b777acf293d2b4ac5af2cce8398b9
2014-09-22 20:50:54 -07:00
Eric Laurent f6cce347a7 audio: add HW hotword capture flag
Bug: 17575019.
Change-Id: I12c0a2e0200f3d839dfd74650724391e54ac3534
2014-09-19 17:45:18 -07:00
Christopher Ferris 6bcc4acc6f Use the correct debuggerd given the tid.
On 64 bit systems, calling dump_backtrace_to_file will automatically
call debuggerd64. If the process to dump is actually 32 bit, this
creates an unrecognizable dump backtrace. Modify the code to check the
type of the process and connect to the appropriate debuggerd process.

This change refactors both the tombstone and backtrace functionality to
allow both to work properly on 64 bit systems when dealing with mixed
processes.

Bug: 17487122

(cherry picked from commit a9fa7b87f1)

Change-Id: I3c9e0212c8720877a6af092071a3695df2a36df8
2014-09-13 16:22:17 -07:00
Christopher Ferris 07bb3f1e0b am 07dda6b5: Merge "Use the correct debuggerd given the tid." into lmp-dev
* commit '07dda6b57c6a476177b68ad42966f24cbbdb04c1':
  Use the correct debuggerd given the tid.
2014-09-13 22:54:00 +00:00
Christopher Ferris a9fa7b87f1 Use the correct debuggerd given the tid.
On 64 bit systems, calling dump_backtrace_to_file will automatically
call debuggerd64. If the process to dump is actually 32 bit, this
creates an unrecognizable dump backtrace. Modify the code to check the
type of the process and connect to the appropriate debuggerd process.

This change refactors both the tombstone and backtrace functionality to
allow both to work properly on 64 bit systems when dealing with mixed
processes.

Bug: 17487122
Change-Id: Icf123a6f4508b1aeec073663aa1a0ceae5380aa1
2014-09-12 20:12:11 -07:00
Mark Salyzyn abc75368a8 am e70851f8: am f9b9693b: Merge "liblog: logcat: colored output."
* commit 'e70851f8a8aa4c9dfaa442abf812c283ba8d8b6f':
  liblog: logcat: colored output.
2014-09-12 20:08:47 +00:00
Pierre Zurek ead88fca6e liblog: logcat: colored output.
This patch adds a new '-v color' option to logcat so that the output is
colored similar to the ones in DDMS. Simply type "adb logcat -v color"
to use it. Works well with bash in gnome-terminal. NO GUARANTEE IT WILL
WORK ON A NON xterm STYLE TERMINAL.

Signed-off-by: Michael Zimmermann <sigmaepsilon92@gmail.com>
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Change-Id: I9189c5f27fed991579edbcbc6834536eb8112152
2014-09-11 19:04:17 -07:00
Jon Eklund 5c9f25da9c am fcfa8640: audio.h: Add "safe speaker" device for limited-loudness use cases
* commit 'fcfa86403e206e2caa519299939480cb45deb8ba':
  audio.h: Add "safe speaker" device for limited-loudness use cases
2014-09-11 18:30:51 +00:00
Jon Eklund fcfa86403e audio.h: Add "safe speaker" device for limited-loudness use cases
Bug: 17319721
Change-Id: Ie1af5b73258f8a0009c3bc3cecb3e0e8b2262ed7
2014-09-10 15:51:48 -07:00
Sreeram Ramachandran 18d5aa4d5a am 69052994: Merge "Support resetting connections tied to any nonexistent address." into lmp-dev
* commit '69052994fd21f2b594295f62e2f867e911e8468d':
  Support resetting connections tied to any nonexistent address.
2014-09-10 00:51:22 +00:00
Sreeram Ramachandran 69052994fd Merge "Support resetting connections tied to any nonexistent address." into lmp-dev 2014-09-09 23:24:45 +00:00
Sreeram Ramachandran 17622d09d5 Support resetting connections tied to any nonexistent address.
Bug: 15414453
Change-Id: Ibf1f052e12b88838a328148e25817a96f10d50f5
2014-09-08 23:35:52 -07:00
Andreas Gampe 41df668c7b NativeBridge: Refactor for new initialization flow
Setup becomes Load, have explicit Initialize and Unload.

(cherry picked from commit 035bd7541e)

Change-Id: I5a20de1cb68dd1802937b369b14c50c9c1031c67
2014-09-08 11:12:13 -07:00
Andreas Gampe 4f65030e0c am 8e10bfd9: am 88d1bc0e: Merge "NativeBridge: Refactor for new initialization flow"
* commit '8e10bfd9cc543fdec8fec26c320f649f72b15e3b':
  NativeBridge: Refactor for new initialization flow
2014-09-04 23:22:29 +00:00
Andreas Gampe 035bd7541e NativeBridge: Refactor for new initialization flow
Setup becomes Load, have explicit Initialize and Unload.

Change-Id: I5a20de1cb68dd1802937b369b14c50c9c1031c67
2014-09-04 12:57:54 -07:00
Hans Boehm cad56b6ad3 Remove android_... store_barriers and 64-bit atomics.
These are no longer used, and we want to strongly discourage future use.
Keep the 32-bit variants while there are still uses.  All users should move
to C11 or C++11 atomics.

(Resolved conflicts in atomic-...64.h with uniprocessor support
removal as in AOSP.)

Bug:16880454

Change-Id: I122b541cfd29ef4a6c932647f85d0d6a9d802061
(cherry picked from commit 9959ed9530)
2014-09-02 17:08:38 -07:00
Brian Carlstrom 68e0d185f4 am 24d2adba: am 188d4396: Merge "Change /dalvik-cache to be owned by root."
* commit '24d2adba7a2f9caa82a88be70ad2fe7397ab310a':
  Change /dalvik-cache to be owned by root.
2014-08-29 11:39:17 +00:00
Alex Light c692410e16 Change /dalvik-cache to be owned by root.
Bug: 16875245

(cherry picked from commit 3878ebd724)

Change-Id: I29a70215a2207bc4e0db02ab751d32a68edf4b66
2014-08-28 16:56:36 -07:00
Brian Carlstrom 188d4396b8 Merge "Change /dalvik-cache to be owned by root." 2014-08-28 23:17:06 +00:00
Alex Light 3878ebd724 Change /dalvik-cache to be owned by root.
Bug: 16875245

Change-Id: I29a70215a2207bc4e0db02ab751d32a68edf4b66
2014-08-27 15:42:19 -07:00
Hans Boehm d034eb1171 am 424eaece: am 69001e08: Merge "Remove android_... store_barriers and 64-bit atomics."
* commit '424eaece64e3649082a3972a8eebf76a6b403494':
  Remove android_... store_barriers and 64-bit atomics.
2014-08-27 22:09:03 +00:00
Hans Boehm 9959ed9530 Remove android_... store_barriers and 64-bit atomics.
These are no longer used, and we want to strongly discourage future use.
Keep the 32-bit variants while there are still uses.  All users should move
to C11 or C++11 atomics.

Change-Id: I122b541cfd29ef4a6c932647f85d0d6a9d802061
2014-08-27 14:15:09 -07:00
Andreas Gampe 049249ce7a NativeBridge: Tighten security on libnativebridge
Do not allow arbitrary paths for the native bridge - only allow
simple names.

Do not allow re-setup of the native bridge.

Bug: 16404669

(cherry picked from commit cd2ef4c1af)

Change-Id: Ie22de356d2307fe2758f9094a85d44e61a4098a1
2014-08-22 01:44:06 -07:00
Andreas Gampe c029f9d225 am 4089cda0: Merge "NativeBridge: Tighten security on libnativebridge" into lmp-dev
* commit '4089cda0ae73e71adb787e595c747846e30730ee':
  NativeBridge: Tighten security on libnativebridge
2014-08-22 05:13:50 +00:00
Andreas Gampe cd2ef4c1af NativeBridge: Tighten security on libnativebridge
Do not allow arbitrary paths for the native bridge - only allow
simple names.

Do not allow re-setup of the native bridge.

Bug: 16404669
Change-Id: Ie22de356d2307fe2758f9094a85d44e61a4098a1
2014-08-21 14:33:44 -07:00
Elliott Hughes 176fe9005d am 4592d73e: am a59b6ac6: Merge "Only the Mac doesn\'t have open_memstream."
* commit '4592d73e18684b8ba2addb97433eed4cf389e386':
  Only the Mac doesn't have open_memstream.
2014-08-21 03:16:26 +00:00
Elliott Hughes a59b6ac697 Merge "Only the Mac doesn't have open_memstream." 2014-08-21 00:11:41 +00:00
Elliott Hughes 3ff8888f66 Only the Mac doesn't have open_memstream.
We should probably move this into art, since they're the only people using it.

Bug: 17164505
Change-Id: I67b8f0cbad4c6368d4424e6979d6b044dd36aa37
2014-08-20 16:16:24 -07:00
Elliott Hughes 3601abb810 am f7e88e51: am 373c7758: Merge "There\'s no non-SMP LP64."
* commit 'f7e88e51b31e64e085b3a564f4b1baa8334d63f1':
  There's no non-SMP LP64.
2014-08-20 20:49:36 +00:00
Elliott Hughes 901c900ce6 There's no non-SMP LP64.
Bug: 17108682
Change-Id: I7e44ab48b5cacf989333882ffe67f39e9b0ce843
2014-08-20 13:05:55 -07:00
Elliott Hughes 10cce72c4b am 3859029a: am 7fb0ee0c: Merge "Remove androidGetTid."
* commit '3859029a48aa78150fa61eb4988214f8632b33ce':
  Remove androidGetTid.
2014-08-18 19:34:23 +00:00
Piotr Jastrzebski c77755f139 am f81da073: am c0879ee9: Merge "Replace char* with ZipEntryName in ziparchive API."
* commit 'f81da073dab8c6eba0a86975f4d94eae5dc461cf':
  Replace char* with ZipEntryName in ziparchive API.
2014-08-18 09:13:07 +00:00
Piotr Jastrzebski c0879ee9d3 Merge "Replace char* with ZipEntryName in ziparchive API." 2014-08-16 04:31:31 +00:00
Elliott Hughes b7659613b2 Remove androidGetTid.
Bug: 17048545
Change-Id: I93cbb2d7bd18d506b5f5f7f262dd9ac0fca053b4
2014-08-18 10:47:37 -07:00
Jeff Brown 84a248ce27 am 69d68b69: Merge "Add trace tag for power management." into lmp-dev
* commit '69d68b69e5341124c1947f3110c67aa8836e3437':
  Add trace tag for power management.
2014-08-16 03:14:32 +00:00
Jeff Brown 69d68b69e5 Merge "Add trace tag for power management." into lmp-dev 2014-08-15 18:45:09 +00:00
Calin Juravle 62de21e148 am 5ed25acd: am 25a7d5f8: Merge "Move native bridge library in system/core"
* commit '5ed25acd4ab7c606986c77892c07c2914f8df8f2':
  Move native bridge library in system/core
2014-08-15 12:42:36 +00:00
Piotr Jastrzebski ecccc5ad93 Replace char* with ZipEntryName in ziparchive API.
It's important because entry names can be encoded in UTF-8 and can have \0
character in the middle.
Use vector instead of char* for prefix in IterationHandle.

Bug: 16162465
Change-Id: Ie34c8d7c6231cc258530c22bdde5542895213649
2014-08-15 12:39:45 +01:00
Calin Juravle 4914fcd91b Move native bridge library in system/core
Bug: 16884833

(cherry picked from commit 961ae12dea)

Change-Id: I67f037ea81d2a4ede4294afd8b84b7640e534a13
2014-08-15 12:40:45 +01:00
Calin Juravle 25a7d5f892 Merge "Move native bridge library in system/core" 2014-08-15 04:45:59 +00:00
Jeff Brown de4d921192 Add trace tag for power management.
Bug: 17004602
Change-Id: Iecd79e6e0417c02b902cde468b0e842f9348b386
2014-08-14 19:24:30 -07:00
Piotr Jastrzebski d5d04be07f am fa412127: am b242ad40: Merge "Revert "Make sure that names of all entries have the same encoding.""
* commit 'fa41212789a068827edc9fd1eac7b6a988cba0a5':
  Revert "Make sure that names of all entries have the same encoding."
2014-08-13 10:02:23 +00:00
Piotr Jastrzebski 8b4a58e1df am b720c8d6: am b0206765: Merge "Make sure that names of all entries have the same encoding."
* commit 'b720c8d601cebbc9f48ef8e51c23fd6d190305f7':
  Make sure that names of all entries have the same encoding.
2014-08-13 09:09:36 +00:00
Calin Juravle 961ae12dea Move native bridge library in system/core
Bug: 16884833

Change-Id: I73aab8e212860ba5aee9444d801806d3da326a41
2014-08-12 22:39:25 +01:00
Piotr Jastrzebski bd0a74854e Revert "Make sure that names of all entries have the same encoding."
This reverts commit 6a7f4bb79d.

Change-Id: Id4f5b601ff0b9d82ce2c9beeb9162eba9594b3a7
2014-08-13 09:49:25 +00:00
Piotr Jastrzebski 6a7f4bb79d Make sure that names of all entries have the same encoding.
Add new public method to allow checkisc if an archive has entry names encoded in
UTF-8. If not then they will be encoded in IBM PC character encoding.

Bug: 16162465
Change-Id: I4468d76accca8a9b0b31cae8d43399ffc22cad42
2014-08-13 09:58:16 +01:00
Piotr Jastrzebski 6a993053c8 am 6871f937: am 400e7372: Merge "Add EndIteration method to free memory allocated"
* commit '6871f937f93c2a37344b928203ec613559584d33':
  Add EndIteration method to free memory allocated
2014-08-11 09:57:52 +00:00
Rachad 9cf963d61e am cc2566f1: Merge "Tunneled Video Playback support" into lmp-dev
* commit 'cc2566f12760d66837b52213e5ffd2cb30cce19e':
  Tunneled Video Playback support
2014-08-09 05:07:13 +00:00
Rachad cc2566f127 Merge "Tunneled Video Playback support" into lmp-dev 2014-08-09 00:51:24 +00:00
Piotr Jastrzebski 79c8b34f36 Add EndIteration method to free memory allocated
in StartIteration. This method should always be called when the
iteration is over to make sure that we don't leak memory.

Change-Id: I5205c754dfafbab9bb5f06003c3663d2ec4e8a35
2014-08-11 07:58:00 +01:00
Elliott Hughes aab3b34cd7 am 4c818dc8: am 56b28f6b: Merge "RefBase: make Renamer destructor virtual"
* commit '4c818dc800d97e2fdee0337a0e9736099d90cc47':
  RefBase: make Renamer destructor virtual
2014-08-06 22:48:30 +00:00
Eric Laurent c85cce96af am fb2343da: Merge "audio: add defines for audio HW sync source" into lmp-dev
* commit 'fb2343da60bdf56205a29ec11db5e3bdd87d9651':
  audio: add defines for audio HW sync source
2014-08-06 20:30:22 +00:00
Eric Laurent d91e6df901 audio: add defines for audio HW sync source
Bug: 16132368.
Change-Id: I4008c315f2cba9c6027998be92f4af649359bcce
2014-08-05 15:02:57 -07:00
Elliott Hughes a613844e13 am e07a6e63: am 6d9a5ac3: Merge "[MIPSR6] Skip pixelflinger, memset assembler code on mips32r6"
* commit 'e07a6e6337a959c45ab71acf6ff1fad8a8ac5dfd':
  [MIPSR6] Skip pixelflinger, memset assembler code on mips32r6
2014-08-05 21:43:16 +00:00
Eric Laurent 3b1215c374 Merge "sound_trigger HAL update" into lmp-dev 2014-08-05 17:41:31 +00:00
Elliott Hughes 6d9a5ac394 Merge "[MIPSR6] Skip pixelflinger, memset assembler code on mips32r6" 2014-08-05 17:41:26 +00:00
Christopher Ferris dda47b7868 Allow getting an uncached process map.
(cherry picked from commit f02593b0e6)

Change-Id: I2012bf2dc553ebc663345b9eac6d794e80df9c00
2014-08-04 19:21:23 -07:00
Elliott Hughes 56b28f6b2c Merge "RefBase: make Renamer destructor virtual" 2014-08-05 00:30:25 +00:00
Ukri Niemimuukko 00e56a248d RefBase: make Renamer destructor virtual
This patch makes the Renamer class destructor virtual and fixes
the incorrect constructor initialization list ordering.

These issues and related compiler warnings have been suppressed
by the build system which uses the gcc –isystem command
line option, unless a project explicitly adds the include the path
system/core/include to Android.mk and uses the templates.

Change-Id: Iff76a655eb8bd547adfe994c7315a005e98aed41
Signed-off-by: Ukri Niemimuukko <ukri.niemimuukko@intel.com>
Signed-off-by: Mingwei Shi <mingwei.shi@intel.com>
Signed-off-by: Yong Yao <yong.yao@intel.com>
2014-08-06 00:12:06 -07:00
Christopher Ferris f02593b0e6 Allow getting an uncached process map.
Change-Id: I58d7e90a7b5c4476a4b9f51640c54d13748ac220
2014-08-04 17:17:57 -07:00
Rachad d6d4c61a93 Tunneled Video Playback support
Added native_window_set_sideband_stream() method to window.h

Bug: 16132368
Change-Id: Iff5770cb2e2d27176bee37edacaed7b783bbce2a
2014-08-04 21:57:37 +00:00
Eric Laurent 3fc434e9c1 sound_trigger HAL update
Indicate if trigger capture is returned with
recognition event in implementation properties
Add coarse confidence level to keyphrase recognition event.
Add capture format to recognition event

Bug: 12378680.

Change-Id: I52303ce2e46b9ebfb9993e47d153799921f9f8e7
2014-08-03 17:52:10 -07:00
Duane Sand 734f50c2fe [MIPSR6] Skip pixelflinger, memset assembler code on mips32r6
Temporarily use generic C-coded libpixelflinger & memset on mips32r6.

Change-Id: I629b11ba955eaba323cba1df96c39f75f4d24d62
2014-07-31 16:21:16 -07:00
Eric Laurent 1e92ed5e83 audio: define type for unique audio Ids.
Define a type for unique audio Ids allocated by AudioFLinger
for use as session Ids or I/O handles.

Bug: 12378680.
Change-Id: Ic9019fff97a1227b60e48c88c57d25dbbdcd7d1e
2014-07-28 14:31:58 -07:00
Eric Laurent a768c306b2 audio: add audio device address helper function
Add helper function to derive set_parameter command
string from device type and address.

14815883

Change-Id: Icf47218f1809f567ef93bdd99d6308475886b298
2014-07-28 19:24:50 +00:00
Eric Laurent 0a381a379d audio: move struct audio_config definition to audio.h
struct audio_config definition moved from hardware/audio.h to
system/audio.h for use inside the framework and not only at the HAL.

Added frame_count field to struct audio_config.

Bug: 14815883.

Change-Id: Ib0e99a60234b8e5302eb882b89e5a021a94ec2cb
2014-07-28 19:18:39 +00:00
Jean-Michel Trivi c3dbe121be Define new audio attribute flag: beacon
Flag AUDIO_FLAG_BEACON characterizes streams where the system
  ensures that the playback of the sound will be compatible
  with its use as a broadcast for surrounding people
  and/or devices. Ensures audibility with no or minimal
  post-processing applied.

Bug 15415971

Change-Id: I1df9dc50e3fcc973a0709a55df5b3bd95f81eb58
2014-07-27 14:09:00 -07:00
Zhijun He c73b73a3c9 graphics: update raw10 to allow padding between rows
Change-Id: Ied1f42bb977212d9e5f3b2b2b3caa9c8c2caac5d
2014-07-25 11:42:38 -07:00
Elliott Hughes 2befa73f68 Remove <cutils/tztime.h>.
(cherry picked from commit f2e4b411e6)

Bug: 15765976
Change-Id: I758acdb18d75ea601a06d02b53f1df9f1ad17a26
2014-07-24 16:16:59 -07:00
Elliott Hughes f2e4b411e6 Remove <cutils/tztime.h>.
Change-Id: I043c6686361bda9e85b82408511bf241a42b9229
2014-07-24 16:13:39 -07:00
Sreeram Ramachandran eec232603d Put back some deleted code.
http://ag/507249 removed a bunch of supposedly dead (unused) code. It turns out
at least ifc_disable() is being used in some protected partner branches. Put
back that as well as ifc_enable() to keep it symmetric.

Bug: 15413389
Change-Id: Ibec83a66e5d9079876ccf36d250b95b7c0294c03
2014-07-23 09:30:53 -07:00
Sreeram Ramachandran a723689eca Cleanup: Delete dead code.
Bug: 15413389
Change-Id: I315468832ef18ffc84174e54774ab63b86d284dc
2014-07-22 15:00:21 -07:00
Hans Boehm b14f65cb50 Do not typedef char16_t if it is a keyword.
Don't define char16_t on platforms where char16_t is a keyword, as
C11 and C++11 define it to be.

(cherry picked from commit dfdbe61d28)
Change-Id: I6717bc2133c1363ecd85861f3869e1eabd2ce96a
2014-07-18 17:53:02 -07:00
Hans Boehm dfdbe61d28 Do not typedef char16_t if it is a keyword.
Don't define char16_t on platforms where char16_t is a keyword, as
C11 and C++11 define it to be.

Change-Id: I6717bc2133c1363ecd85861f3869e1eabd2ce96a
2014-07-16 16:09:37 -07:00
Jungshik Jang cadd5bb70e Add force usage and config type for HDMI-CEC system audio mode.
New Usage Type: AUDIO_POLICY_FORCE_FOR_HDMI_SYSTEM_AUDIO
New Config Type: AUDIO_POLICY_FORCE_HDMI_SYSTEM_AUDIO_ENFORCED
When HDMI-CEC system audio mode is enabled, AudioService will
call
 setForceUse(AUDIO_POLICY_FORCE_FOR_HDMI_SYSTEM_AUDIO,
          AUDIO_POLICY_FORCE_HDMI_SYSTEM_AUDIO_ENFORCED);
in order to notify enabled system audio mode, so that
audio policy manager chooses proper output.
When it turns into off, AudioService will call
 setForceUse(AUDIO_POLICY_FORCE_FOR_HDMI_SYSTEM_AUDIO,
          AUDIO_POLICY_FORCE_NONE);

Along with it, add new audio output devic type,
AUDIO_DEVICE_OUT_AUX_LINE, in order to distinguish
line out for headphone and aux output of av device.

Bug: 16305986
Bug: 16002150
Change-Id: Idecdf626737f6635ea3cda638c343260b1661c77
2014-07-16 09:21:04 +09:00
Ruben Brunk a5e65d86a2 Allow sticky transform to be set in ANativeWindow.
Bug: 15116722

- Adds methods to set the sticky transform field.

Change-Id: Idaa4311dfd027b2d2b8ea5e2c6cba2da5779d753
2014-07-14 22:14:49 +00:00
Hans Boehm 5af7877950 Add comment to discourage use of cutils/atomic.h.
Change-Id: Ib05c745158fdf5a11fd4697c3665a6370ffc04f5
2014-07-11 18:30:13 -07:00
Glenn Kasten e60eb62384 Merge "Representation of channel masks for position assignment and index assignment" 2014-07-11 16:34:41 +00:00
Hans Boehm 4b9f899bf1 am e6b0c566: am 981dcd79: Merge "Add comment to discourage use of cutils/atomic.h."
* commit 'e6b0c566762dbea1c45198d15ecc5e8a59378d73':
  Add comment to discourage use of cutils/atomic.h.
2014-07-12 19:36:58 +00:00
Glenn Kasten 432b7c6da2 Representation of channel masks for position assignment and index assignment
Bug: 16245854
Change-Id: I76c7c39c7d4f8d5035016653aa91fa7c1e749bbd
2014-07-12 13:23:57 +00:00
aarti jadhav-gaikwad 923e740879 audio: add definitions for aac sub formats
add definitions for aac sub formats

Change-Id: I610caa510dfc7347f7c98e19359545423edd76b3
2014-07-11 18:26:00 +00:00
Jungshik Jang 6fe316102a Merge "Fix size of "values" fields of audio_gain_config." 2014-07-10 21:52:20 +00:00
Jungshik Jang f7e5aeadb7 Fix size of "values" fields of audio_gain_config.
It should be sizeof(audio_channel_mask_t) * 8 not
sizeof(audio_channel_mask_t) alone.

Change-Id: I3523dd4d44a0900ba1845b3675a22451f1fc2f3c
2014-07-11 03:37:42 +00:00
Jungshik Jang 2c7cfc10f5 Remove forced usage types for HDMI-CEC system audio mode.
Change-Id: Ice8aab76281aa62a42665d7c86df1041c7f64ab9
2014-07-11 03:36:28 +00:00
Terry Heo a916e260db Merge "audio: add definition for new audio loopback input device" 2014-07-02 19:52:36 +00:00
Terry Heo b63dd8a005 audio: add definition for new audio loopback input device
Bug: 15437484
Change-Id: I62da0596d405c3bb5e00b461f7d4fd11627ed391
2014-07-08 14:52:51 +00:00
Eric Laurent 81c006d792 Revert "Revert "sound trigger: several data structure updates""
This reverts commit 6ef7c14b02.

Change-Id: I285b8388e7fd6f697b76fd18697edea7368991bb
2014-07-08 11:48:15 -07:00
Eric Laurent 6ef7c14b02 Revert "sound trigger: several data structure updates"
This reverts commit 135dd2ee3d.

Change-Id: Iad97090c77ad36567eb3c6550ebe3812768e88ad
2014-07-07 16:43:45 +00:00
Eric Laurent 135dd2ee3d sound trigger: several data structure updates
Added sound model implementor UUID.
Added capture preamble duration in recognition event.
Replaced number of users by list of user IDs in key phrase
descriptor.
Report confidence level for each user with user ID in recognition
event.
Added more configuration data to start_recognition() grouped in a
recognition configuration structure.
- List of keyphrases to listen to
- Recognition mode
- List of users with min confidence level
Added definitions for sound model load callback event.

Bug: 12378680.
Change-Id: Ia8c12ab20448b702d13db964bdd90ac4117a58d7
2014-07-06 16:03:42 -07:00
Eric Laurent db37858a17 sound trigger: add sound model and key phrase IDs.
Bug: 12378680.
Change-Id: I93b1916151108ccf6eb625b0078e6ed574720b76
2014-07-06 10:44:18 -07:00
Nick Kralevich 774ca89315 am ed559bdb: am 3dbd7e10: am 1aad06dd: Merge "implement LOG_EVENT_STRING"
* commit 'ed559bdb38e4f8edb183420f69490d4eba39f94b':
  implement LOG_EVENT_STRING
2014-07-02 23:13:43 +00:00
Nick Kralevich ed559bdb38 am 3dbd7e10: am 1aad06dd: Merge "implement LOG_EVENT_STRING"
* commit '3dbd7e10688e29022db7dd0778ec8078c2a7a545':
  implement LOG_EVENT_STRING
2014-07-02 18:25:32 +00:00
Nick Kralevich 2a4d05a4e3 implement LOG_EVENT_STRING
Implement LOG_EVENT_STRING, so that native code can create new
event log entries. This is needed to support logging SELinux denials
to the event log.

Change-Id: I6a269a832bc2f5e5da6c9dbd169ed2f901b49166
2014-07-01 12:22:04 -07:00
Jungshik Jang 0c3664f08d Define force usage and category for System Audio.
System Audio Control in HDMI-CEC delegates audio
output to Audio Receiver and audio output port
is one of ARC, SPDIF and analog output (line).

Change-Id: Ieb325f754f039e09aae68b700349861ca4e08cbc
2014-07-01 17:10:02 +09:00
Ian Rogers f267b06305 am 3e906630: am 33dce382: am 63a61e56: Merge "Rename __unused to __UNUSED for glibc support."
* commit '3e906630099e0508a72300e14512a62110c864c3':
  Rename __unused to __UNUSED for glibc support.
2014-06-29 23:14:09 +00:00
Ian Rogers 3e90663009 am 33dce382: am 63a61e56: Merge "Rename __unused to __UNUSED for glibc support."
* commit '33dce382fd39b633731c925a1487a74332e86871':
  Rename __unused to __UNUSED for glibc support.
2014-06-29 23:08:49 +00:00
Ian Rogers de8b983357 Rename __unused to __UNUSED for glibc support.
Glibc declares unused fields as __unused and so a #define for __unused causes
issues when we built against glibc on the host. Rename __unused to __UNUSED as
a workaround.
This fixed checkbuild for 64-bit host builds. Bug: 13751317

Change-Id: Ic2cd52518c16661497cc819cb3fd7f1fa5c6f0fb
2014-06-27 17:40:32 -07:00
Zhijun He 72fce30eeb graphics: add android raw10 format
Change-Id: Ib1b74b1664159190e417f2e68a5a13493d04adfc
2014-06-25 15:21:20 -07:00
Elliott Hughes 8e1f3f58e4 am 2c2fdae7: am 633be1f3: Merge "Remove android_atomic_swap from mips & mips64."
* commit '2c2fdae75490130b3df2c4989716381deaac0969':
  Remove android_atomic_swap from mips & mips64.
2014-06-23 20:20:13 +00:00
Elliott Hughes bad62c532c am ba467827: am 29705171: Merge "[MIPS64] add atomic-mips64"
* commit 'ba46782770743ad8331047fc839c4e98060d167c':
  [MIPS64] add atomic-mips64
2014-06-23 19:48:56 +00:00
Elliott Hughes e6d567bd10 am 8e1f3f58: am 2c2fdae7: am 633be1f3: Merge "Remove android_atomic_swap from mips & mips64."
* commit '8e1f3f58e41e97cb6cf131d8bcd75e3ad2e733ad':
  Remove android_atomic_swap from mips & mips64.
2014-06-23 20:25:20 +00:00
Elliott Hughes 7688ef0063 am bad62c53: am ba467827: am 29705171: Merge "[MIPS64] add atomic-mips64"
* commit 'bad62c532c8fabbada924c617d983fbfc94623e3':
  [MIPS64] add atomic-mips64
2014-06-23 19:54:10 +00:00
Elliott Hughes a74680fcc8 Remove android_atomic_swap from mips & mips64.
Looks like this got left behind in mips by mistake, and
84c3e99231 carried this over to mips64.
Clean up before it wastes any more time...

Change-Id: I6aeaa6e68be81f94065589337e2f7d3483e6e43c
2014-06-23 11:57:30 -07:00
Elliott Hughes 2970517132 Merge "[MIPS64] add atomic-mips64" 2014-06-23 14:50:49 +00:00
Riley Andrews 72f66d982a am 1fe97b3d: am 5bd578e1: Merge "cutils: Add property_get_bool, _get_int32, _get_int64"
* commit '1fe97b3d0f6dbc6376a0ebe1f66725e9f73b4442':
  cutils: Add property_get_bool, _get_int32, _get_int64
2014-06-20 22:40:40 +00:00
Igor Murashkin d8f2a8d34a cutils: Add property_get_bool, _get_int32, _get_int64
* Read out system properties with same syntax as SystemProperties.java
* Also adds unit test suite to validate correctness of properties
* Also fixes buffer overrun in property_get

(cherry picked from commit d4507e9246)

Change-Id: Ifd42911f93e17da09e6ff1298e8875e02f3b6608
2014-06-20 20:01:49 +00:00
Lorenzo Colitti 25af09e16d Merge "Support parsing netlink route messages." 2014-06-19 22:58:18 +00:00
Lorenzo Colitti d7ff7ea652 Support parsing netlink route messages.
Bug: 9180552
Change-Id: I4a36d869ac692647fb226d0912285bdf2ffcb1fa
2014-06-21 10:55:07 +09:00
Lorenzo Colitti 9b34293566 Improvements to netlink event parsing.
1. Accept that parseNetlinkMessage can only parse one netlink
   message, because its way of returning output is to modify its
   member variables (mAction, mParams, etc.). Currently, it
   loops through all the messages it finds, updating its member
   variables as it goes along, and always returns true at the end
   of the buffer. This has the following problems:

   1. Since the function always returns true even when no
      messages were parsed, the caller has no way to know if
      parsing succeeded, and we get lots of "No subsystem found
      in netlink event" logs if the buffer did not contain any
      valid messages we were interested in.
   2. If there are multiple messages in the buffer, all but the
      last message will be silently ignored.
   3. If there are multiple messages and previous messages have
      more parameters than the last one, the resulting event will
      have a mixture of parameters from multiple messages.

   Instead of doing all this, change the contract to "parse the
   first valid message of interest in the buffer and return true,
   or return false if there were no such messages", and update
   the code and the comments accordingly.

2. Modify the caller (NetlinkListener) so it doesn't log an
   error when parseBinaryNetlinkMessage returns false, because
   this can now simply mean that we weren't interested in that
   particular message. parseBinaryNetlinkMessage already logs
   more informative errors.

3. Provide utility functions to check received message lengths and
   to convert message types to message names.

4. Simplify logging duplicate attributes.

5. Use the appropriate IFLA_xxx macros instead of rolling our own
   code to parse link state messages.

6. Move all the parsing code out to per-message-type parsing
   functions to order to simplify parseBinaryNetlinkMessage.

Bug: 9180552
Change-Id: I6bbc2f7a104f618674dde2369c1fd5e93ea49430
2014-06-21 10:54:43 +09:00
Lorenzo Colitti 4937431a4b Merge "Improvements to netlink event parsing." 2014-06-19 22:58:18 +00:00
Eric Laurent ce30de3553 audio: added new audio formats.
Bug: 9428304.

Change-Id: Ife1f6968a8d079b477b5afb5e5cf544e8fe3298f
2014-06-19 09:55:54 -07:00
Mark Salyzyn e5fdfcdcb4 am 9b86360f: am c3e23666: am 7fa1cd19: Merge "log: Fix warning with __USE_MINGW_ANSI_STDIO"
* commit '9b86360fb41b46abfc0e475cfdea4370a93179d5':
  log: Fix warning with __USE_MINGW_ANSI_STDIO
2014-06-13 14:43:58 +00:00
Mark Salyzyn 9b86360fb4 am c3e23666: am 7fa1cd19: Merge "log: Fix warning with __USE_MINGW_ANSI_STDIO"
* commit 'c3e2366602c428cf39ce9068a834771f535d58b2':
  log: Fix warning with __USE_MINGW_ANSI_STDIO
2014-06-13 14:40:42 +00:00
Dan Willemsen 0cddcc67cc log: Fix warning with __USE_MINGW_ANSI_STDIO
I haven't seen this warning in any AOSP code, but some of our code is
using this header differently than the rest of the build system, and
hits this warning-turned-error:

error: "__USE_MINGW_ANSI_STDIO" is not defined [-Werror=undef]

Change-Id: I3c5a91f107af8bf6078e06f2ce326c5466349b79
2014-06-12 13:19:51 -07:00
Nick Kralevich b14ab71f0e am 0487e50a: am 24fc60c7: am 304d31f0: Merge "Make su 04750"
* commit '0487e50accf44f13acafad5fb5d76b4958d86550':
  Make su 04750
2014-06-11 20:24:20 +00:00
Nick Kralevich 0487e50acc am 24fc60c7: am 304d31f0: Merge "Make su 04750"
* commit '24fc60c7a686afb06a8a4a6246ede277ef300e50':
  Make su 04750
2014-06-10 20:26:31 +00:00
Jeff Brown 5ee915afe1 Add a couple of useful string functions.
Change-Id: I158f69917bab5f15482dd8f2b66b36a4cc0f11ad
2014-06-09 14:02:52 -07:00
Nick Kralevich c3df8d7562 Make su 04750
Currently, /system/xbin/su is world executable. Prior to SELinux
enforcement, anyone (including third party apps) could run su.
The su code itself checks to see if the calling UID is root or shell.

Rather than relying on enforcement within the su binary, modify the
binary so it has group=shell, and remove world-execute permission.
This helps avoid some annoying SELinux denial messages as third party
apps call su on userdebug/eng builds.

Change-Id: I61c9231bb7e201d14ee3a5b6fe81b3fa7b12599f
2014-06-08 15:14:42 -07:00
Robin Lee f086a8134c am 63cdd840: am e948c9fa: am 489797c2: Merge "Add new AID shared by all apps in a profile"
* commit '63cdd840f81839bf6ce6e3723c42f09256cf4b3e':
  Add new AID shared by all apps in a profile
2014-06-04 19:06:23 +00:00
Robin Lee 63cdd840f8 am e948c9fa: am 489797c2: Merge "Add new AID shared by all apps in a profile"
* commit 'e948c9faaa4861f578ebe00c8d2fabe7908e24a6':
  Add new AID shared by all apps in a profile
2014-06-04 19:04:12 +00:00
Robin Lee 489797c2cb Merge "Add new AID shared by all apps in a profile" 2014-06-04 18:45:02 +00:00
Andrew Hsieh 213fce951b am 4e3f28e7: am 7ab32aca: Merge "Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO"
* commit '4e3f28e748e0fe6e71d34a898c6a670621786200':
  Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO
2014-06-04 12:32:30 +00:00
Andrew Hsieh 4e3f28e748 am 7ab32aca: Merge "Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO"
* commit '7ab32aca56fe8df4575fc2e2e40ff7e1d38fca60':
  Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO
2014-06-04 12:27:05 +00:00
Andrew Hsieh 7ab32aca56 Merge "Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO" 2014-06-04 07:11:00 +00:00
Duane Sand 84c3e99231 [MIPS64] add atomic-mips64
Supplied by Broadcom.

Change-Id: Ica8f4f6e713623e372a68e1dc11086ceb52516da
2014-06-03 16:15:01 -07:00
Eric Laurent 5894b4bfaa add definitions for sound trigger
Add header file sound_trigger.h containing
base definitions and data types for sound
trigger native service and HAL.

Change-Id: Ie357d8c3909d0e1afda230523aded2d8699c69f1
2014-06-03 14:48:41 -07:00
Jean-Michel Trivi 0d580e83dd Define audio attributes type in system audio header
Change-Id: Iac2030a1e4a6827676e6c5f9b408f1e768207f00
2014-06-03 15:47:17 +00:00
Elliott Hughes 540a1849cb am b3697ec2: am c752d6dd: am bf082ffb: Merge "Updated trace.h to recognize ATRACE_TAG_BIONIC."
* commit 'b3697ec2cb75d4f13c22a54b0ef90f4e8fb46e02':
  Updated trace.h to recognize ATRACE_TAG_BIONIC.
2014-05-28 22:17:56 +00:00
Mike Lockwood 1142d8ecea Merge "audio: Add AUDIO_DEVICE_IN_BLUETOOTH_A2DP" 2014-05-28 21:53:41 +00:00
Elliott Hughes b3697ec2cb am c752d6dd: am bf082ffb: Merge "Updated trace.h to recognize ATRACE_TAG_BIONIC."
* commit 'c752d6dd37a943b2ef64c184a0ff542e78173bc9':
  Updated trace.h to recognize ATRACE_TAG_BIONIC.
2014-05-28 21:45:12 +00:00
Elliott Hughes bf082ffb71 Merge "Updated trace.h to recognize ATRACE_TAG_BIONIC." 2014-05-28 21:35:57 +00:00
Mike Lockwood c8183af4b3 audio: Add AUDIO_DEVICE_IN_BLUETOOTH_A2DP
Change-Id: I32770abd42702d99f409f0968326041e78d1a826
2014-05-28 13:47:25 -07:00
Mark Salyzyn f661a8f531 am 27348af6: am 6445b40e: am 811f2c0b: Merge "system/window.h: add deprecation warnings"
* commit '27348af683a55d8701567fdeabdd37b547b187f0':
  system/window.h: add deprecation warnings
2014-05-28 19:33:51 +00:00
Mark Salyzyn 27348af683 am 6445b40e: am 811f2c0b: Merge "system/window.h: add deprecation warnings"
* commit '6445b40e93931dedcb831f38343c031c13b7ddb2':
  system/window.h: add deprecation warnings
2014-05-28 19:31:06 +00:00
Mark Salyzyn 811f2c0b98 Merge "system/window.h: add deprecation warnings" 2014-05-28 19:25:15 +00:00
Torne (Richard Coles) f9ff246dd7 am 4f3ad823: am a8329a36: am 96109cf3: Merge "Add UID and directory for RELRO sharing support."
* commit '4f3ad823eaf97fcbcbb1afac67371aff76677b1d':
  Add UID and directory for RELRO sharing support.
2014-05-28 18:02:24 +00:00
Torne (Richard Coles) 4f3ad823ea am a8329a36: am 96109cf3: Merge "Add UID and directory for RELRO sharing support."
* commit 'a8329a36ca0e5f5799ec2dd14ae360dc0656b9c9':
  Add UID and directory for RELRO sharing support.
2014-05-28 10:20:55 +00:00
Brigid Smith 8c82b35239 Updated trace.h to recognize ATRACE_TAG_BIONIC.
Bug: 15116468
Change-Id: If8d4971505ffe5cbc193c6ad71618a5adb8192b6
2014-05-27 12:37:48 -07:00
Torne (Richard Coles) 234f696ea7 Add UID and directory for RELRO sharing support.
Define a UID to be used by the process responsible for creating shared
RELRO files for the WebView native library, and create a directory owned
by that UID to use to store the files.

Bug: 13005501
Change-Id: I5bbb1e1035405e5534b2681f554fe16f74e3da1a
2014-05-27 14:00:29 +01:00
Mark Salyzyn 881c89c54a am 7aa8cdfb: am 21157abc: am 8814bd1d: Merge "include: cleanup for -Wsystem-header"
* commit '7aa8cdfb317dcb7efb7127b070526df09da05377':
  include: cleanup for -Wsystem-header
2014-05-23 22:33:41 +00:00
Mark Salyzyn 7aa8cdfb31 am 21157abc: am 8814bd1d: Merge "include: cleanup for -Wsystem-header"
* commit '21157abcd932e899032689dba120d4f7cb08aa23':
  include: cleanup for -Wsystem-header
2014-05-23 22:31:24 +00:00
Mark Salyzyn 289e111a00 system/window.h: add deprecation warnings
Change-Id: I38de3d281f28e0750b4abb86f28509f98dfc7a72
2014-05-23 15:10:06 -07:00
Mark Salyzyn 4887842c92 include: cleanup for -Wsystem-header
- warnings as errors, or errors introduced when -Wsystem-header
  was experimentally introduced.

Change-Id: Ia8f5b3c1c1096e191741223d52526aa48c7f1cc4
2014-05-23 15:09:57 -07:00
Colin Cross 2594f0f6d1 am 2113474a: am 17c3a227: am 617c28b8: Merge "Fix list_for_each_safe macro"
* commit '2113474ae090ee4c6a06864011ce8a4e4cae9673':
  Fix list_for_each_safe macro
2014-05-23 19:34:02 +00:00
Colin Cross 795e59b32a am fcc81e3c: am 184eecf0: am 4ecbda41: Merge "Add list_add_head to libcutils"
* commit 'fcc81e3c6f0724b3b360b19071005e559334bc58':
  Add list_add_head to libcutils
2014-05-23 19:34:02 +00:00
Colin Cross 2113474ae0 am 17c3a227: am 617c28b8: Merge "Fix list_for_each_safe macro"
* commit '17c3a227505988b33e1219a8e0a921de874f9b70':
  Fix list_for_each_safe macro
2014-05-22 22:50:53 +00:00
Colin Cross fcc81e3c6f am 184eecf0: am 4ecbda41: Merge "Add list_add_head to libcutils"
* commit '184eecf017b847bcb6999919f5aa4628521aca2d':
  Add list_add_head to libcutils
2014-05-22 22:50:52 +00:00
Colin Cross 617c28b8f2 Merge "Fix list_for_each_safe macro" 2014-05-22 22:27:14 +00:00
Colin Cross 4ecbda41c9 Merge "Add list_add_head to libcutils" 2014-05-22 22:26:43 +00:00
Rom Lemarchand 72159a5804 Merge "audio: added definitions for audio routing extensions" 2014-05-22 19:02:29 +00:00
Dan Albert e2a3d37c8f am 219e867f: am 7f8ebb81: am 30291f21: Merge "Add missing headers"
* commit '219e867f61755720af3cddb5e8d2fe0e198a27ab':
  Add missing headers
2014-05-22 13:32:56 +00:00
Dan Albert 219e867f61 am 7f8ebb81: am 30291f21: Merge "Add missing headers"
* commit '7f8ebb8178cd6a3d9ea0206070682a9b463f15d2':
  Add missing headers
2014-05-22 03:30:53 +00:00
Dan Albert ac2fe7eb81 Add missing headers
These headers are needed for pid_t and free when using libc++ headers (POSIX
does not require that the symbols be exposed with the previous includes).

Change-Id: Ia51a4fdfdbae7377130a43c401c2d8d241671d1e
2014-05-21 20:08:35 -07:00
Eric Laurent 4cd050121f audio: added definitions for audio routing extensions
Added definitons and structures for new audio routing features
in the framework and audio HAL.
The structures describe the objects needed to perform audio
routing and audio gain control: different variants of audio ports
and their corresponding configurations as well as gain controllers.

Change-Id: Iecd1b9186831067a52cc55619a63b7bba57dcbd9
2014-05-21 17:38:33 -07:00
Sreeram Ramachandran 02c723579d am f8733c63: am 08c08f72: Merge "Move netd_client into netd."
* commit 'f8733c63aa7b7de8350264295a2c2c080b5307a4':
  Move netd_client into netd.
2014-05-21 17:04:15 +00:00
Sreeram Ramachandran 91dc3369d3 Move netd_client into netd.
(cherry picked from commit f1b21c5c73)

Change-Id: Ie4b6b303225c93f2448a503d6ea9cebb552cbad5
2014-05-21 09:26:57 -07:00
Sreeram Ramachandran f1b21c5c73 Move netd_client into netd.
Change-Id: Ie4b6b303225c93f2448a503d6ea9cebb552cbad5
2014-05-21 08:55:19 -07:00
Eric Laurent abcb99927d audio: add definitions for new audio devices
Change-Id: I7bbc564a81fd693fa7e6bcb3a817986b50568147
2014-05-20 01:05:01 +00:00
Elliott Hughes 3edc25271f am b42f1413: am 0e71e3ab: am 9cae50b3: Merge "Bound the ADB connect time with a non-blocking connect"
* commit 'b42f141315ae0929325335645d397db04a500c88':
  Bound the ADB connect time with a non-blocking connect
2014-05-20 00:23:08 +00:00
Elliott Hughes b42f141315 am 0e71e3ab: am 9cae50b3: Merge "Bound the ADB connect time with a non-blocking connect"
* commit '0e71e3ab9cf66f41645ea286c7e62ed2b657ca38':
  Bound the ADB connect time with a non-blocking connect
2014-05-19 23:26:22 +00:00
Ken Lierman aecc6a6657 Bound the ADB connect time with a non-blocking connect
After a disconnect, the initial blocking connect takes
a long time to return, while subsequent calls return
quicks.  Switch to a non-blocking connect to make the
re-connect time more consistent and faster overall.

Change-Id: I21d02b22a8eb9a457c2f1fa95eb17894d5612ccd
Signed-off-by: Ken Lierman <ken.lierman@windriver.com>
Reviewed-by: Gumbel, Matthew K <matthew.k.gumbel@intel.com>
Reviewed-by: Jovanovic, Radivoje <radivoje.jovanovic@intel.com>
Reviewed-by: Boie, Andrew P <andrew.p.boie@intel.com>
2014-05-19 16:16:42 -07:00
Andy Hung a7e8f8615d Add channel count functions for audio masks
audio_channel_count_from_in_mask
audio_channel_count_from_out_mask

Change-Id: Ic519f2c3f85d14acb9526cc8812360fcbd15346d
Signed-off-by: Andy Hung <hunga@google.com>
2014-05-16 23:11:13 +00:00
Sreeram Ramachandran 5bd06936e7 am 07a1b526: am 75161485: Merge "Introduce netd_client, a dynamic library that talks to netd."
* commit '07a1b526ae36368293909b6c3ee7d5f18b89a2a7':
  Introduce netd_client, a dynamic library that talks to netd.
2014-05-14 19:51:38 +00:00
Sreeram Ramachandran 154ebe80a0 Introduce netd_client, a dynamic library that talks to netd.
This library is dynamically loaded and used by bionic, to replace selected
standard socket syscalls with versions that talk to netd.

Implement connect() by requesting that the socket be marked with the netId of
the default network and then calling through to the actual syscall.

There are two escape hatches:

+ If the fwmark server is unavailable, it isn't an error; we proceed with the
  syscall. This might help at boot time (when the server isn't ready yet) and if
  we get rid of the fwmarkd socket entirely in future platform versions.

+ If the ANDROID_NO_USE_FWMARK_CLIENT environment variable is set, we don't
  attempt to use the fwmark server (even if it's available). This allows apps to
  sidestep unforseen issues in production at runtime.

(cherry picked from commit 0581cb455ef924f128a5c6d46bc70868b5099eec)

Change-Id: Ib6198e19dbc306521a26fcecfdf6e8424d163fc9
2014-05-14 11:13:53 -07:00
Sreeram Ramachandran 8f95def419 Introduce netd_client, a dynamic library that talks to netd.
This library is dynamically loaded and used by bionic, to replace selected
standard socket syscalls with versions that talk to netd.

Implement connect() by requesting that the socket be marked with the netId of
the default network and then calling through to the actual syscall.

There are two escape hatches:

+ If the fwmark server is unavailable, it isn't an error; we proceed with the
  syscall. This might help at boot time (when the server isn't ready yet) and if
  we get rid of the fwmarkd socket entirely in future platform versions.

+ If the ANDROID_NO_USE_FWMARK_CLIENT environment variable is set, we don't
  attempt to use the fwmark server (even if it's available). This allows apps to
  sidestep unforseen issues in production at runtime.

Change-Id: Ib6198e19dbc306521a26fcecfdf6e8424d163fc9
2014-05-14 04:12:23 -07:00
Samuel Ortiz f8a1089ab5 Add list_add_head to libcutils
Adds a node to the head of the linked list.

Change-Id: I03fc81f348c5c4fdab8680928b6e353413e4bc3c
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Yong Yao <yong.yao@intel.com>
2014-05-13 21:37:35 +00:00
Thierry Escande 8cc7427040 Fix list_for_each_safe macro
The second macro parameter is named 'next' like listnode structure
'next' field. Since the precompiler will expand all 'next' occurrences
in the macro definition with what is passed by the caller, it is not
possible to call this macro with something else than 'next' as second
parameter.

This patch replaces the 'next' parameter with 'n' allowing use of a
next node not named 'next'.

Change-Id: I78c859caf8193f21fe0bedaeaa8342d6e89ad14b
Signed-off-by: Thierry Escande <thierry.escande@linux.intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2014-05-10 09:31:52 -07:00
John Reck 1d0fedefbf Merge "Add VirtualLightRefBase" 2014-05-09 23:18:19 +00:00
John Reck d83186c444 Add VirtualLightRefBase
Change-Id: I040db87d9e87ba0584e7e5bdd72f0c319a522fa1
2014-05-09 15:27:22 -07:00
Christopher Ferris ee15ddee72 Fix ucontext_t forward declare for mac.
(cherry picked from commit afa9c9cd72)

Change-Id: I6dacdfacfdff0c3ce5166207cfd60adb347ee347
2014-05-09 14:17:31 -07:00
Christopher Ferris 8fb224d32b Fix mac build.
Forward declare ucontext_t so that it's not necessary for ucontext.h
to be included in the global header.

(cherry picked from commit b138037b26)

Change-Id: I0ffb5bf7c53da8467dd8770880ff412a5158d639
2014-05-09 14:17:18 -07:00
Christopher Ferris f4e28c3956 am 0f5e9579: am b49f23ed: Merge "Fix ucontext_t forward declare for mac."
* commit '0f5e957963d6f455f4685772d0e1181d8f44e7bd':
  Fix ucontext_t forward declare for mac.
2014-05-09 21:01:59 +00:00
Christopher Ferris afa9c9cd72 Fix ucontext_t forward declare for mac.
Change-Id: I30470f5cc25553dee25d4858f64ec5af13aa20c9
2014-05-09 13:19:34 -07:00
Christopher Ferris 8ad708c565 am c1087e55: am bf6c2dbe: Merge "Fix mac build."
* commit 'c1087e55c63f2c206eae676fd4c237585a64e8e5':
  Fix mac build.
2014-05-09 18:19:04 +00:00
Christopher Ferris b138037b26 Fix mac build.
Forward declare ucontext_t so that it's not necessary for ucontext.h
to be included in the global header.

Change-Id: Ic13677dd572ab1acd927f0a17b284f9b417a642f
2014-05-09 11:04:09 -07:00
Christopher Ferris e49e43d4aa am 3adbe79d: am 66e31dc5: am 3a088524: Merge "Rewrite unwind thread handling."
* commit '3adbe79d2f14665ff55a9b0db245abebc105658d':
  Rewrite unwind thread handling.
2014-05-09 16:45:35 +00:00
Christopher Ferris 3adbe79d2f am 66e31dc5: am 3a088524: Merge "Rewrite unwind thread handling."
* commit '66e31dc51e0d8db595cc1514527c4db6f5cdeba7':
  Rewrite unwind thread handling.
2014-05-09 16:42:31 +00:00
Christopher Ferris 3a088524cb Merge "Rewrite unwind thread handling." 2014-05-09 16:33:12 +00:00
Andrew Hsieh ad832859a7 Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO
With __USE_MINGW_ANSI_STDIO mingw compiler uses its own replacement
printf*/scanf* libraries instead of Microsoft's ones which aren't always
C99 compatible.  Declare "archetype" of attribute format to gnu_printf
because the default "printf" in mingw follows MS standard.

One result is that "%z" (a gnu-extension) is accepted w/o warning by
mingw compiler

Change-Id: I3e92f34e2a1e8d664b4f1f55d450f7c2790671f3
2014-05-09 11:50:45 +08:00
Christopher Ferris a2efd3ac7a Rewrite unwind thread handling.
This new version doesn't require any specialized thread
implementation, it uses the Current implementation to do its job.
In addition, it runs much faster when multiple threads are trying
to unwind at the same time since the global signal lock is held for
only a small amount of time. Even running through the threads one at
a time should be faster since it no longer requires two passes through
the unwound stacks.

The new code now allows multiple simultaneous unwinds of the
same thread.

Finally, add the ability to unwind from a ucontext_t passed in. This
functionality doesn't work for remote unwinds yet.

Change-Id: I4d181d7ca5ffd2acfd1686e668e6d21e36b425cb
2014-05-08 14:42:16 -07:00
Elliott Hughes be6b3ad1f0 am d1c807a8: am 22a289a0: am 7112e4c7: Merge "Remove the dead corkscrew header files too."
* commit 'd1c807a8807dc85ce5efe7997b440b3a5dc2e4d3':
  Remove the dead corkscrew header files too.
2014-05-07 22:35:26 +00:00
Elliott Hughes d1c807a880 am 22a289a0: am 7112e4c7: Merge "Remove the dead corkscrew header files too."
* commit '22a289a0b6fcb1c0edc372e477c876819749addd':
  Remove the dead corkscrew header files too.
2014-05-07 20:28:45 +00:00
Elliott Hughes ddbdae8c3f Remove the dead corkscrew header files too.
Change-Id: I0dd5cf3966994db19d98f60805211ed39099465a
2014-05-07 09:38:04 -07:00
Mark Salyzyn 22b47f321d am 21852477: am 15704b1b: am d9bb6770: Merge "logd: 64-bit compile issue"
* commit '218524778a02ef53a74dcdbd17923441c3d90305':
  logd: 64-bit compile issue
2014-05-02 22:18:23 +00:00
Mark Salyzyn 218524778a am 15704b1b: am d9bb6770: Merge "logd: 64-bit compile issue"
* commit '15704b1bdfc7ddf080d50f7a5cf478dfb6608962':
  logd: 64-bit compile issue
2014-05-02 21:49:16 +00:00
Mark Salyzyn 3cb5498785 logd: 64-bit compile issue
- ULONG_MAX is used against an uint32
- Add tv_sec_max and tv_nsec_max constants to log_time

Change-Id: Ic86cd7b0680868ad0536198b71a34cb19134fc22
2014-05-02 14:16:00 -07:00
Glenn Kasten fbb9f993a0 Remove AUDIO_CHANNEL_OUT_SURROUND
Change-Id: Id163902dd2c83200201012ffb704d338e81ea471
2014-04-29 09:05:11 -07:00
Glenn Kasten ee7c17b7fc Add AUDIO_CHANNEL_OUT_5POINT1_SIDE and AUDIO_CHANNEL_OUT_QUAD_SIDE
for use by downmix effect

Also add documentation about platform convention for interleaving.

Change-Id: I44f837e876c6e8f5f70a726d797631ffa556cf9f
2014-04-29 08:58:34 -07:00
Glenn Kasten b8d59396df Rename AUDIO_CHANNEL_OUT_QUAD and AUDIO_CHANNEL_OUT_5POINT1
to AUDIO_CHANNEL_OUT_QUAD_BACK and AUDIO_CHANNEL_OUT_5POINT1_BACK
respectively, for consistency with terminology used in downmix effect

For the time being, preserve the old names to avoid changing existing code.

Change-Id: I11131e3f66087090a590c93921092ca4fc78cf1c
2014-04-29 08:43:56 -07:00
Robin Lee b3ef03951c Add new AID shared by all apps in a profile
Automatically assigned as a GID to all apps running under the same
Android profile. Used for exposing to or sharing files with apps
running in a specific profile.

Analogous to AID_SHARED_GID only the sharing is between processes with
the same userId rather than with the same appId.

The name to be displayed for uids/gids with this AID is 'u*_everyone'.

Change-Id: I46efb749f74cb86868c5609a0ce1a6aab2f9e9c9
2014-04-29 12:46:04 +01:00
Elliott Hughes 84a445b4f5 am 29941ec8: am f8db4afb: am ab3d49b0: Merge "Use the si_code value bionic passes us."
* commit '29941ec81705bdcad2b43f0059e1288304c523e8':
  Use the si_code value bionic passes us.
2014-04-26 03:33:27 +00:00
Elliott Hughes 29941ec817 am f8db4afb: am ab3d49b0: Merge "Use the si_code value bionic passes us."
* commit 'f8db4afb703e0005eca7207bfdcc989c6cf66f1a':
  Use the si_code value bionic passes us.
2014-04-26 03:30:13 +00:00
Elliott Hughes 855fcc3114 Use the si_code value bionic passes us.
Bionic needs to re-raise various signals, which means the si_code
debuggerd sees has been clobbered. If bionic sends us the original
si_code value, we can use that instead of the one we see when the
ptrace the crashed process' siginfo.

Change-Id: If116a6bc667d55a6fb39b74f96673292af4e4c8c
2014-04-25 20:20:39 -07:00
Rom Lemarchand aba03c0b7a am d2674cba: am 0a04c556: am 19759a08: Merge "audio: fix audio_is_bluetooth_sco_device()"
* commit 'd2674cbad9dac54ae23d1bbcdf137d75d582258f':
  audio: fix audio_is_bluetooth_sco_device()
2014-04-24 22:25:03 +00:00
Rom Lemarchand d2674cbad9 am 0a04c556: am 19759a08: Merge "audio: fix audio_is_bluetooth_sco_device()"
* commit '0a04c556947e4fb8e12cd73b9aded27318002336':
  audio: fix audio_is_bluetooth_sco_device()
2014-04-24 22:21:39 +00:00
Eric Laurent b526630ab8 audio: fix audio_is_bluetooth_sco_device()
Bug: 14268964
Change-Id: Ia2a185c5e0939930c5114209651a1e0db6c36ef3
2014-04-24 22:03:00 +00:00
Elliott Hughes cef3eff0d9 am 6d7a2ee4: am b1bcd9c3: am 6798914b: Merge "Improve liblog\'s fatal logging."
* commit '6d7a2ee4e8b590071042ae424a3e8c951f198a8f':
  Improve liblog's fatal logging.
2014-04-24 20:52:48 +00:00
Elliott Hughes 6d7a2ee4e8 am b1bcd9c3: am 6798914b: Merge "Improve liblog\'s fatal logging."
* commit 'b1bcd9c3ae89f9060fcd8468d5a04f3710e2b1a6':
  Improve liblog's fatal logging.
2014-04-24 20:47:00 +00:00
Elliott Hughes da6b2e2fd7 Improve liblog's fatal logging.
This makes LOG_ALWAYS_FATAL and LOG_ALWAYS_FATAL_IF as good as regular
assert(3).

Change-Id: I0666684d30cae7baf23c64b33d35c1e43f81acf0
2014-04-24 13:28:24 -07:00
Paul McLean 00b8972062 Usb Capture Implementation
Change-Id: I0b5166cc380419455373d590b9a6c4b21bf6634c
2014-04-23 20:55:57 +00:00
Mark Salyzyn 297c19d75f am f7770d59: am 19697f3e: am 3ad0af6d: Merge "logd: liblog: logcat: debuggerd: Add LOG_ID_CRASH"
* commit 'f7770d59dfdc5b3b6fe94f167636b75c1c5d4a81':
  logd: liblog: logcat: debuggerd: Add LOG_ID_CRASH
2014-04-17 23:33:50 +00:00
Mark Salyzyn 0b8710ff8e am 4f7e54f3: am fe545b9c: am 0516aded: Merge "logd: libsysutils: logd startup outside init environment"
* commit '4f7e54f32d256e285c400a0f8cfa56bff9d5a8fa':
  logd: libsysutils: logd startup outside init environment
2014-04-17 23:33:50 +00:00
Mark Salyzyn f7770d59df am 19697f3e: am 3ad0af6d: Merge "logd: liblog: logcat: debuggerd: Add LOG_ID_CRASH"
* commit '19697f3e1eaf9c54b612e42f93619658194707cd':
  logd: liblog: logcat: debuggerd: Add LOG_ID_CRASH
2014-04-17 23:22:38 +00:00
Mark Salyzyn 4f7e54f32d am fe545b9c: am 0516aded: Merge "logd: libsysutils: logd startup outside init environment"
* commit 'fe545b9cb7188036d5fe8c433c7c87dd1b364c2b':
  logd: libsysutils: logd startup outside init environment
2014-04-17 23:22:37 +00:00
Mark Salyzyn 3ad0af6d04 Merge "logd: liblog: logcat: debuggerd: Add LOG_ID_CRASH" 2014-04-17 23:12:10 +00:00
Mark Salyzyn dfc47e8685 logd: libsysutils: logd startup outside init environment
Change-Id: I3426b6c3eebdd0c8258e966dcaaaa2825d7a23d1
2014-04-17 16:14:24 +00:00
Mark Salyzyn 99f47a9e7c logd: liblog: logcat: debuggerd: Add LOG_ID_CRASH
Change-Id: Iea453764a1a4fc1661f461f10c641c30150e4d20
2014-04-16 15:38:50 -07:00
Igor Murashkin 8481765738 Merge "libutils: Clarify Condition::signal wakes up exactly one thread" 2014-04-15 22:50:02 +00:00
Igor Murashkin db4193833c libutils: Clarify Condition::signal wakes up exactly one thread
Contrary to POSIX pthread_cond_signal guarantees, bionic will wake up
either zero or one threads.

Change-Id: I628fcd4d5bd8d5290104506f86caa82c54142230
2014-04-15 15:40:41 -07:00
Igor Murashkin 0ef87a44f8 Merge "cutils: Add property_get_bool, _get_int32, _get_int64" 2014-04-14 21:59:32 +00:00
John Reck 8af196c1f5 Merge "Add a peekOldestValue" 2014-04-14 20:17:53 +00:00
Narayan Kamath 8d56ff5d12 am c5aff686: am cda31324: am 4706320e: Merge "Include 64bit valgrind in the android_filesystem_config."
* commit 'c5aff68693dee788a28a0d0256782cc8521aa2a5':
  Include 64bit valgrind in the android_filesystem_config.
2014-04-14 16:05:11 +00:00
Narayan Kamath c5aff68693 am cda31324: am 4706320e: Merge "Include 64bit valgrind in the android_filesystem_config."
* commit 'cda31324afdc3e9d1bc5d2e9ee45985cf1fb8819':
  Include 64bit valgrind in the android_filesystem_config.
2014-04-14 16:01:31 +00:00
Narayan Kamath 6b7ab90ca9 Include 64bit valgrind in the android_filesystem_config.
Required so that we set the exectuable bit correctly.

Change-Id: If59bd0ff47d2b4b2b8f92a1c007b4ba414ea1876
2014-04-12 09:11:16 +01:00
Andreas Gampe 02c9460a0a BitSet32 64b compatibility fix
Using __builtin_c{l,t}zl fails on 64b systems as unsigned long is
8B there. However, unsigned int is only guaranteed to be 2B. Introduce
a check that should be optimized away by the compiler.

Change-Id: I854d0817c6bb5ae13c257241240664bf8f1a7c8a
2014-04-11 22:41:46 -07:00
John Reck 9d8707c75a Add a peekOldestValue
Change-Id: I89d8ea14c8ac02653d9c0e1fe24a4b17bb9c87f5
2014-04-11 19:14:15 -07:00
Igor Murashkin d4507e9246 cutils: Add property_get_bool, _get_int32, _get_int64
* Read out system properties with same syntax as SystemProperties.java
* Also adds unit test suite to validate correctness of properties
* Also fixes buffer overrun in property_get

Change-Id: Ifd42911f93e17da09e6ff1298e8875e02f3b6608
2014-04-11 17:49:01 -07:00
Mark Salyzyn fb59398dc6 am 63a14ed7: am ae3ba0b3: am 472e04f2: Merge "logd: liblog: logcat: enable prune features for user"
* commit '63a14ed7fc728f84f9496fc99bc1df01b5bc8b16':
  logd: liblog: logcat: enable prune features for user
2014-04-09 23:41:29 +00:00
Mark Salyzyn 63a14ed7fc am ae3ba0b3: am 472e04f2: Merge "logd: liblog: logcat: enable prune features for user"
* commit 'ae3ba0b339e7a768fe58f179fdab55f273419e1e':
  logd: liblog: logcat: enable prune features for user
2014-04-09 23:37:45 +00:00
Mark Salyzyn 472e04f2b4 Merge "logd: liblog: logcat: enable prune features for user" 2014-04-09 23:33:28 +00:00
Tim Murray 4854a36e2a am 1f87d3ab: am 83fd6375: am 31631861: Merge "Add guards to prevent typedefs when C++11 is available."
* commit '1f87d3ab8c384d03d1496c63f7faad15bd5eeba9':
  Add guards to prevent typedefs when C++11 is available.
2014-04-07 22:12:07 +00:00
Tim Murray 1f87d3ab8c am 83fd6375: am 31631861: Merge "Add guards to prevent typedefs when C++11 is available."
* commit '83fd6375f6d9016afe9bb03453d39b8c41cda548':
  Add guards to prevent typedefs when C++11 is available.
2014-04-07 22:06:38 +00:00
Tim Murray ae83f84548 Add guards to prevent typedefs when C++11 is available.
char32_t and char16_t are both defined in C++11.

Change-Id: I44fe8f4f05f230c18a1b77fa21b6a40c8f8ecc2d
2014-04-07 14:11:21 -07:00
Christopher Ferris 7962e4acc7 am 6a8c3164: am e35cba9a: am a97798af: Merge "Create an UnwindMapLocal object."
* commit '6a8c316438032c72ffdd2988cc1eb2717f477254':
  Create an UnwindMapLocal object.
2014-04-04 03:19:39 +00:00
Christopher Ferris 6a8c316438 am e35cba9a: am a97798af: Merge "Create an UnwindMapLocal object."
* commit 'e35cba9af02004d30033826638e00ba5fdcdd013':
  Create an UnwindMapLocal object.
2014-04-04 02:04:39 +00:00
Christopher Ferris e296091060 Create an UnwindMapLocal object.
The way libunwind handles local unwinds is different from remote unwinds,
so create a new map object to handle the differences.

Add new test to verify the map data is being generated correctly.

Add new tests to check for leaks.

Refactor the BACK_LOGW code into a single header file.

Change-Id: I01f3cbfc4b927646174ea1b614fa25d23b9b3427
2014-04-03 14:19:24 -07:00
Mark Salyzyn 1c95047939 logd: liblog: logcat: enable prune features for user
- Enable whitelist, blacklist and logsize tuneables for user

Change-Id: Id0c283844c71c5263a8cfbebf2e550f7ac415858
2014-04-02 13:12:04 -07:00
Wonsik Kim 94404eef65 Merge "Clarify ownership for NativeHandle::mHandle" 2014-04-02 06:13:59 +00:00
Michael Wright a45ff0f586 am df33e8b5: Add BitSet64. DO NOT MERGE
* commit 'df33e8b544c457e4b08e8fa0b8a3eaf5eaf8fc2e':
  Add BitSet64. DO NOT MERGE
2014-03-26 19:29:05 +00:00
Paul McLean 55c6407041 Adding a handy predicate function (str_parms_has_key()
Change-Id: I1af5c260a1a820b65f0850ea9adb38b01fcb183c
2014-03-25 19:08:13 +00:00
Michael Wright df33e8b544 Add BitSet64. DO NOT MERGE
Change-Id: Idf3e21dfaa9f90f4dcb1b4d41eed3891dda99561
2014-03-24 16:51:01 -07:00
Wonsik Kim c4cc584bbd Clarify ownership for NativeHandle::mHandle
Change-Id: I0835278df1aa78f10d5493d7ef2c9e4a15c0fee9
2014-03-24 11:40:36 +09:00
Mark Salyzyn 2583dec08c am 3f4855c1: am 46f3ebba: am 28171447: Merge "cutils: trace 64-bit compile issues"
* commit '3f4855c11889470691673c15f05361df61ea95b2':
  cutils: trace 64-bit compile issues
2014-03-20 22:27:19 +00:00
Mark Salyzyn 3f4855c118 am 46f3ebba: am 28171447: Merge "cutils: trace 64-bit compile issues"
* commit '46f3ebba31d5820a08d0a638c9e261fbcea907a0':
  cutils: trace 64-bit compile issues
2014-03-20 20:53:25 +00:00
Mark Salyzyn a459d0b0e2 cutils: trace 64-bit compile issues
- switch format to PRId64 for int64_t
- switch format to PRId32 for int32_t

Change-Id: I1e66db06810000936d584ed49234550abd96cdff
2014-03-20 13:02:57 -07:00
Michael Wright 2ec064597c Add static methods to BitSet.
Also, moar testing.

Change-Id: I512b337a1a85a0794445fc6249af7ca39ba7c381
2014-03-19 11:23:01 -07:00
Michael Wright 74e2538b48 Add traits to BitSet64, not 32.
Change-Id: I3d41bbe47f5b02c610f69fc7824e416436d086b1
2014-03-18 17:45:37 -07:00
Michael Wright bab6ea0bb7 Add BitSet64
Change-Id: Ia0039aae00316f42a8306a9fb8ad37269180b58c
2014-03-18 17:28:22 -07:00
Mark Salyzyn 6b9096b454 am e42e9db3: am 19bbf92d: am fc204a96: Merge changes Ia9509ad0,I4e815d74,I10e8d92c
* commit 'e42e9db3143f819e19684d4f882ef3834454a44d':
  logcat: test White Black list
  logd: Find log time for arbitrary time to tail
  logd: liblog: logcat: Arbitrary time to tail
2014-03-14 18:05:24 +00:00
Mark Salyzyn e42e9db314 am 19bbf92d: am fc204a96: Merge changes Ia9509ad0,I4e815d74,I10e8d92c
* commit '19bbf92de92ad9dbfb26b3a94025bf6e6cb72cee':
  logcat: test White Black list
  logd: Find log time for arbitrary time to tail
  logd: liblog: logcat: Arbitrary time to tail
2014-03-14 18:01:25 +00:00
Mark Salyzyn fa3716b250 logd: liblog: logcat: Arbitrary time to tail
Change-Id: I10e8d92c933e31ee11e78d2d1114261a30c4be0e
2014-03-14 10:23:51 -07:00
Mark Salyzyn ba1987fb30 am 77eed05b: am f3dcda5f: Merge changes I1572338c,I39965007,I521753b1
* commit '77eed05b7ca44cfa013223fdb6f30dc0cc2e2760':
  logd: liblog: logcat: Add LogWhiteBlackList
  logd: prune by worst offending UID
  logd: liblog: logcat: Add Statistics
2014-03-13 22:04:09 +00:00
Mark Salyzyn dfa7a07f5b logd: liblog: logcat: Add LogWhiteBlackList
- liblog android_logger_get_log_size and android_logger_get_readable_size
  adjusted to return long instead of int because of -G flag extending range

NB: ifdef'd only for userdebug and eng builds

- liblog Add android_logger_[sg]et_prune_list and android_logger_set_log_size
- logcat Add -P, -p and -G flags
- logd Add LogWhiteBlackList and configurable log size

(cherry picked from commit 18a5432158)

Change-Id: I1572338c1b34bd968ad7867857ef708156ec3b6a
2014-03-13 14:48:07 -07:00
Mark Salyzyn 34facab86b logd: liblog: logcat: Add Statistics
- logd add statistical collection and formatting
- liblog add android_logger_get_statistics call
- logcat add -S flag
- logcat add -b all

(cherry picked from commit 51a29c8dc4)

Change-Id: I521753b1969ecd4590c956aeeb1557d101059d67
2014-03-13 14:47:58 -07:00
Mark Salyzyn 18a5432158 logd: liblog: logcat: Add LogWhiteBlackList
- liblog android_logger_get_log_size and android_logger_get_readable_size
  adjusted to return long instead of int because of -G flag extending range

NB: ifdef'd only for userdebug and eng builds

- liblog Add android_logger_[sg]et_prune_list and android_logger_set_log_size
- logcat Add -P, -p and -G flags
- logd Add LogWhiteBlackList and configurable log size

Change-Id: I1572338c1b34bd968ad7867857ef708156ec3b6a
2014-03-12 17:23:59 -07:00
Mark Salyzyn 51a29c8dc4 logd: liblog: logcat: Add Statistics
- logd add statistical collection and formatting
- liblog add android_logger_get_statistics call
- logcat add -S flag
- logcat add -b all

Change-Id: I521753b1969ecd4590c956aeeb1557d101059d67
2014-03-12 17:11:01 -07:00
Alex Ray 665902ee5a am db480f75: am 6a58c4f3: am 33e86e00: Merge "libcutils: add method to get klog level"
* commit 'db480f7516977123a0c5c6f6705b282d2e55ab89':
  libcutils: add method to get klog level
2014-03-08 05:46:35 +00:00
Alex Ray db480f7516 am 6a58c4f3: am 33e86e00: Merge "libcutils: add method to get klog level"
* commit '6a58c4f342fa104fbabcd195561b90966f227a76':
  libcutils: add method to get klog level
2014-03-08 02:00:29 +00:00
Alex Ray 157e1b645a libcutils: add method to get klog level
Change-Id: I55e8311bae97703be26e57b415a8ab0a6d9b4361
2014-03-07 13:58:02 -08:00
Glenn Kasten 45b9581fc9 audio_is_valid_format is true for all PCM formats
Change-Id: I733f3208315816575f6d4f7722e906ab50b161af
2014-03-07 12:32:14 -08:00
Andy Hung 173f4995b0 Update audio_bytes_per_sample for PCM 24 bit packed
Change-Id: Ic79f604893f5c4f2e8e35189d6638b5b160435ed
Signed-off-by: Andy Hung <hunga@google.com>
2014-03-07 18:20:15 +00:00
Mark Salyzyn 318900ad80 am d01c257f: am 8f632327: am bb0fbdbe: Merge "logd: liblog: 64-bit issues"
* commit 'd01c257f0f19a30178a6d5ec9d6d00d6b702fed3':
  logd: liblog: 64-bit issues
2014-03-07 03:02:41 +00:00
Mark Salyzyn d01c257f0f am 8f632327: am bb0fbdbe: Merge "logd: liblog: 64-bit issues"
* commit '8f63232712e318da88d2f543fe29066c26d39c32':
  logd: liblog: 64-bit issues
2014-03-06 22:41:23 +00:00
Jesse Hall 7d2998ea18 Merge "Add NativeHandle, a refcounted C++ wrapper around a native_handle_t*" 2014-03-06 19:05:25 +00:00
Jesse Hall 29cc9ce49a Add NativeHandle, a refcounted C++ wrapper around a native_handle_t*
Change-Id: I232dfa2ad2e4a463a39e2e901e4097dffe278cc3
2014-03-05 16:12:41 -08:00
Mark Salyzyn 7e2f83c0bc logd: liblog: 64-bit issues
- structure packing
- move towards log_time from struct timespec
- extend log_time to cover differences between
  log_time and struct timespec

Change-Id: I106ed0b609917306d170044054b5b32645f2a295
2014-03-05 16:12:28 -08:00
Mark Salyzyn 1d39c53e29 am 00eaae3a: am 556c9c24: am 858d0dd1: Merge "set /proc/sys/net/unix/max_dgram_qlen to large value"
* commit '00eaae3aaa6ea3ca2c9c00e0559fa6937ce33e37':
  set /proc/sys/net/unix/max_dgram_qlen to large value
2014-03-04 01:00:21 +00:00
Mark Salyzyn 00eaae3aaa am 556c9c24: am 858d0dd1: Merge "set /proc/sys/net/unix/max_dgram_qlen to large value"
* commit '556c9c245de257efe8bda09ff23d2c4f7add5e49':
  set /proc/sys/net/unix/max_dgram_qlen to large value
2014-03-04 00:16:31 +00:00
Mark Salyzyn 581edc1b6c set /proc/sys/net/unix/max_dgram_qlen to large value
- init: set /proc/sys/net/unix/max_dgram_qlen to 300
- libsysutils: Add listen backlog argument to startListener
- logd: set listen backlog to 300

Change-Id: Id6d37d6c937ba2d221e76258d89c9516619caeec
2014-03-03 12:48:00 -08:00
Lajos Molnar 3a436c1c3c Merge "Adding opus to list of audio formats" 2014-03-03 19:45:49 +00:00
Mark Salyzyn 7be31bbf67 am b0eaeb42: am a69270db: Merge "liblog: enable logging to logd."
* commit 'b0eaeb42cea7e3ee36e03ef461532b5b8556a26e':
  liblog: enable logging to logd.
2014-02-28 22:41:29 +00:00
Mark Salyzyn 154f4608aa liblog: enable logging to logd.
* Modify liblog to send all messages to the new syslog user
  space daemon.

Original-Change-Id: I0ce439738cd921efb2db4c1d6a289a96bdbc8bc2
Original-Change-Id: If4eb0d09409f7e9be3eb4bb7017073dc7e931ab4
Signed-off-by: Nick Kralevich <nnk@google.com>

* Add a TARGET_USES_LOGD make flag for BoardConfig.mk to manage
  whether logd is enabled for use or not.
* rename syslog to logd to avert confusion with bionic syslog
* Add fake log support back in
* prefilter for logging messages from logd
* Fill in timestamps at logging source
* update abstract log reader
* switch from using suffix for id to v3 format
* log a message when creating devices that a deprecated interface
  is being utilized.

Signed-off-by: Mark Salyzyn <salyzyn@google.com>

(cherry pick from commit 099e2c1f6f706a8600c1cef74cce9066fc315480)

Change-Id: I47929a5432977a1d7235267a435cec0a7d6bd440
2014-02-28 13:49:11 -08:00
Mark Salyzyn 1794710315 liblog: enable logging to logd.
* Modify liblog to send all messages to the new syslog user
  space daemon.

Original-Change-Id: I0ce439738cd921efb2db4c1d6a289a96bdbc8bc2
Original-Change-Id: If4eb0d09409f7e9be3eb4bb7017073dc7e931ab4
Signed-off-by: Nick Kralevich <nnk@google.com>

* Add a TARGET_USES_LOGD make flag for BoardConfig.mk to manage
  whether logd is enabled for use or not.
* rename syslog to logd to avert confusion with bionic syslog
* Add fake log support back in
* prefilter for logging messages from logd
* Fill in timestamps at logging source
* update abstract log reader
* switch from using suffix for id to v3 format
* log a message when creating devices that a deprecated interface
  is being utilized.

Signed-off-by: Mark Salyzyn <salyzyn@google.com>

Change-Id: I47929a5432977a1d7235267a435cec0a7d6bd440
2014-02-27 17:51:43 -08:00
Narayan Kamath 665b0bb4f9 am bfed1360: am 1ed1d341: am 26fa5cd3: Merge "AArch64: Use negative values in error enumeration"
* commit 'bfed136068feb299b3ca8a07d6eaf5d93e3ff2a3':
  AArch64: Use negative values in error enumeration
2014-02-27 13:33:25 +00:00
Narayan Kamath bfed136068 am 1ed1d341: am 26fa5cd3: Merge "AArch64: Use negative values in error enumeration"
* commit '1ed1d341baaba1d1453dbd061476d4263f17aa28':
  AArch64: Use negative values in error enumeration
2014-02-27 13:30:09 +00:00
Narayan Kamath 26fa5cd39d Merge "AArch64: Use negative values in error enumeration" 2014-02-27 13:18:18 +00:00
Nick Kralevich edc1abf1bb am 1bb3489e: resolved conflicts for merge of e9c8fb90 to klp-modular-dev-plus-aosp
* commit '1bb3489e600876979146a6222ac5bb2a684702bf':
  logd: initial checkin.
2014-02-26 22:31:26 +00:00
Mark Salyzyn 0175b0747a logd: initial checkin.
* Create a new userspace log daemon for handling logging messages.

Original-Change-Id: I75267df16359684490121e6c31cca48614d79856
Signed-off-by: Nick Kralevich <nnk@google.com>

* Merge conflicts
* rename new syslog daemon to logd to prevent confusion with bionic syslog
* replace racy getGroups call with KISS call to client->getGid()
* Timestamps are filed at logging source
* insert entries into list in timestamp order
* Added LogTimeEntry tail filtration handling
* Added region locking around LogWriter list
* separate threads for each writer
* /dev/socket/logd* permissions

Signed-off-by: Mark Salyzyn <salyzyn@google.com>

(cherry picked from commit 3e76e0a497)

Author: Nick Kralevich <nnk@google.com>
Change-Id: Ice88b1412d8f9daa7f9119b2b5aaf684a5e28098
2014-02-26 09:52:35 -08:00
Alex Ray c2729741c2 am 4fc8231c: Merge "graphics: Add colorspace definitions" into klp-volantis-dev
* commit '4fc8231c187f3bc96e4633ee055efe5b10590d79':
  graphics: Add colorspace definitions
2014-02-22 00:21:07 +00:00
Alex Ray 4fc8231c18 Merge "graphics: Add colorspace definitions" into klp-volantis-dev 2014-02-21 23:54:05 +00:00
Ashok Bhat 1ee7570052 AArch64: Use negative values in error enumeration
With AArch64 the enumerations with values in the range
0x80000000 to 0x80000007 are being assigned to ssize_t
typed variables which are 64-bit rather than 32-bit, and
are being used in conditions where they are being checked
for being negative. This is not the case when ssize_t is
64-bit, so redefine this to INT32_MIN value.

Change-Id: I7a031a940a28658b3bf34bebac93dfb3ba397b05
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2014-02-20 14:11:35 +00:00
Mark Salyzyn 4046c132dc Merge changes I929dddc7,Ice88b141,I243b1338
* changes:
  logd: prune more aggressively when over the top
  logd: initial checkin.
  logcat: test: add clear and blocking check
2014-02-20 00:27:02 +00:00
Nick Kralevich 202be73b62 am f10492d8: am 066cde92: am 223e0798: Merge "Enable building init with -Wall -Werror."
* commit 'f10492d8c0c907fad6f87c871fec6b2fac41a02c':
  Enable building init with -Wall -Werror.
2014-02-19 19:23:13 +00:00
Stephen Smalley eb3f421e02 Enable building init with -Wall -Werror.
Eliminates various warnings from SELinux-related code.

Bug: 12587913
Change-Id: I28921f0ebd934324436609540d95ccef58552b64
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-02-19 09:15:09 -05:00
Alex Ray c9f3bcf87b graphics: Add colorspace definitions
Change-Id: I54230dc2c0e481228457e8a01a50d300c917e657
2014-02-18 16:54:21 -08:00
Nick Kralevich 3e76e0a497 logd: initial checkin.
* Create a new userspace log daemon for handling logging messages.

Original-Change-Id: I75267df16359684490121e6c31cca48614d79856
Signed-off-by: Nick Kralevich <nnk@google.com>

* Merge conflicts
* rename new syslog daemon to logd to prevent confusion with bionic syslog
* replace racy getGroups call with KISS call to client->getGid()
* Timestamps are filed at logging source
* insert entries into list in timestamp order
* Added LogTimeEntry tail filtration handling
* Added region locking around LogWriter list
* separate threads for each writer
* /dev/socket/logd* permissions

Signed-off-by: Mark Salyzyn <salyzyn@google.com>

Change-Id: Ice88b1412d8f9daa7f9119b2b5aaf684a5e28098
2014-02-14 11:07:54 -08:00
Elliott Hughes a5d04cf62c am fcd4dad3: am 620a8800: am 1c1bd845: Merge "x86_64: Add atomic funtions"
* commit 'fcd4dad3967de79450549e78524ac73f775b51f2':
  x86_64: Add atomic funtions
2014-02-12 23:00:26 +00:00
Qiming Shi 4bc2f8db0a x86_64: Add atomic funtions
This patch adds atomic functions for x86_64.

Change-Id: I298c760a1e6efa2ce2c61a143f833b6785805442
Signed-off-by: Qiming Shi <qiming.shi@intel.com>
2014-02-11 16:17:39 -08:00
Colin Cross 62ea114e53 am aeeacff9: am ec08c03c: am 85516e9d: Merge "log: add compile-time checking when ALOGV is disabled"
* commit 'aeeacff9ed2137bb06130555d8360b09bd75252c':
  log: add compile-time checking when ALOGV is disabled
2014-02-10 22:24:03 +00:00
Colin Cross 810d19f99a log: add compile-time checking when ALOGV is disabled
Wrap the call in a if (0) when verbose logging is disabled
to provide compile time checking.

Also add a printf format attribute to the function to warn
if parameters are incorrect.

Change-Id: Ic77edeadcc4d886ca0f8b434f8550e18e22d5901
2014-02-09 21:59:24 -08:00
Ruben Brunk 84a95225d6 Merge "camera3: Add opaque raw format." 2014-02-07 01:56:08 +00:00
Ruben Brunk 535253eabe camera3: Add opaque raw format.
Change-Id: I7abf0e63a0f74ede46e0fe4dd1285283355624b1
2014-02-06 11:32:23 -08:00
Elliott Hughes 5c4020005b Revert "Move to the canonical UniquePtr.h."
This reverts commit 2a72c575d2.

Change-Id: Idb485f1be2906e8c1c8f0da3df186a7aade027f6
2014-02-04 23:41:22 +00:00
Doug Zongker 9526202d84 set permissions of recovery install script
The script that writes the recovery partition after a successful
update of system needs to be made executable.  This change also moves
it from /system/etc to /system/bin.

Bug: 12893978
Change-Id: I686e2392a2392515a6859a7381b735de1007b7ea
2014-02-04 12:33:08 -08:00
Elliott Hughes 2a72c575d2 Move to the canonical UniquePtr.h.
Change-Id: I5330c36d2b571acb6d3debd30b8020e33aa8a4a7
2014-02-04 11:58:51 -08:00
Glenn Kasten 5a23144aa5 Merge "Add 24-bit packed to audio_format_t" 2014-02-03 23:31:55 +00:00
Elliott Hughes 6cfb31d652 am 5cbb68cf: am da9b5dab: am 434edbe6: Merge "LP64 should have debuggerd and debuggerd64."
* commit '5cbb68cf891fa040563c70784363496cf3e05174':
  LP64 should have debuggerd and debuggerd64.
2014-02-01 01:39:18 +00:00
Elliott Hughes e9edf7a0ef LP64 should have debuggerd and debuggerd64.
Change-Id: I4e39c200e6867bb9a5bbcfec1c449b8864028feb
2014-01-31 17:15:10 -08:00
Elliott Hughes 19750a2c30 am f1935b6d: am 2e9dcd21: am 1bc6169f: Merge "Remove dead code that looked like part of debuggerd."
* commit 'f1935b6d933861d6194bf056a844ec0f11765c38':
  Remove dead code that looked like part of debuggerd.
2014-02-01 00:52:06 +00:00
Elliott Hughes 9361b58330 am fe0d5d42: am 5434bf66: Merge "LP64: Enable debuggerd/libbacktrace/libunwind."
* commit 'fe0d5d42e4ca8b77d6a0657be1b8b6343c21d689':
  LP64: Enable debuggerd/libbacktrace/libunwind.
2014-01-31 22:38:29 +00:00
Elliott Hughes 6694d3e3d5 Remove dead code that looked like part of debuggerd.
Note that these were two different functions. The definition was unused,
and the declaration was undefined.

Change-Id: I2edd10a0ab9422cd5252bdb9ccdd726dc5fad531
2014-01-31 10:37:18 -08:00
Glenn Kasten c0a51093a2 Add 24-bit packed to audio_format_t
Change-Id: I08c38ee3ade7b24dc9e2b3ed2b7037c42521a555
2014-01-31 07:51:17 -08:00
Pavel Chupin c6c194ced0 LP64: Enable debuggerd/libbacktrace/libunwind.
Change-Id: I2e432839f86c33c2adbaac8cc12ca8961956044b
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2014-01-30 17:15:24 -08:00
Vignesh Venkatasubramanian 76edb1c0e6 Adding opus to list of audio formats
Adding opus to the list of audio formats enum.

This CL is part of adding Opus decoding support to android.

Change-Id: I41decf426ed3f76c10b27f247b1264010689c759
2014-01-29 10:11:39 -08:00
Mike Lockwood 5df1e320c7 Merge "libusbhost: Add usb_device_set_configuration and usb_device_set_interface" 2014-01-29 18:09:38 +00:00
Christopher Ferris 96a0bf1e94 am 36a4e408: am aaf89887: am 6fe31b2f: am d391c9b4: Merge "Re-enable libunwind for arm."
* commit '36a4e4085e55048ee2a78c7d5b50f7395e547fa2':
  Re-enable libunwind for arm.
2014-01-29 12:19:59 +00:00
Christopher Ferris d391c9b4ac Merge "Re-enable libunwind for arm." 2014-01-28 21:23:50 +00:00
Christopher Ferris df2906186b Re-enable libunwind for arm.
Update to handle the new optimized way that libunwind works.

In addition, a small refactor of the BacktraceMap code.

A few new tests of for good measure.

Change-Id: I2f9b4f5ad5a0dfe907b31febee76e4b9b94fb76f
2014-01-28 12:03:36 -08:00
Mark Salyzyn 44b99c22af libsysutils: SocketListener export release
* Foreground thread (legacy) closes connection by
  reporting false return value for onDataAvailable.
* Background thread can choose instead to close the
  connection asynchronously by calling release, must
  return true for the onDataAvailable method.

(cherry picked from commit d7ad4e409e)

Change-Id: I70ab37d5c22b02804aa3b4dfb26cc9b75291f8b6
2014-01-27 15:22:49 -08:00
Mark Salyzyn 23f04107dc libsysutils: Add iovec/runOnEachSocket
SocketClient:
* Replace sendDataLocked with sendDataLockedv which takes an iovec.
* Add a version of sendData, sendDatav, which takes an iovec.
* do not preserve iovec content through sendDatav

SocketListener:
* Add runOnEachSocket, which allows to to specify a SocketClientCommand to
  run individually on each socket. This allows you to do broadcast-like
  actions customized for each individual socket.
* Client safe list reference counting for sendBroadcast & runOnEach Socket

(cherry picked from commit a6e965578e)

Signed-off-by: Nick Kralevich <nnk@google.com>
Signed-off-by: Mark Salyzyn <salyzyn@google.com>

Change-Id: I716f89c01b4cb7af900045c7e41fac1492defb06
2014-01-27 15:22:04 -08:00
Mark Salyzyn 318bb72601 liblog: Add const pedantics
(cherry picked from commit 9e03ce45f9)

Change-Id: I819695b778ac08fcfc9b1a87f3f86e5715f53084
2014-01-27 15:19:53 -08:00
Mark Salyzyn 819c58a8ca liblog: Add liblog test suite
(cherry picked from commit 8d1fdb5093)

Change-Id: Ia457d518b4e7ff37e840336ff0c48583709700d4
2014-01-27 15:17:39 -08:00
Mark Salyzyn 1345f38e44 liblog: deprecate export LOGGER ioctl definitions
(cherry picked from commit 2e44a9ea25)

Change-Id: I150cad9309255bec2b8bc7230c744e9bbb1b9578
2014-01-27 15:16:43 -08:00
Mark Salyzyn e9c4196980 liblog: deprecate export of LOGGER_LOG_* defines
(cherry picked from commit 73459a5c87)

Change-Id: I263af8e889f8f2ad91b91757caf90a4d17823dab
2014-01-27 15:16:04 -08:00
Mark Salyzyn 168021c282 liblog: resolve build warning messages
(cherry picked from commit 153b370624)

Change-Id: Icc6f1f2c926a008efc4df71022cfde8d0e285880
2014-01-27 15:15:05 -08:00
Mark Salyzyn f387fa5df0 liblog: drop use of sys/cdefs.h
(cherry picked from commit c96a44888a)

Change-Id: I44ea5d6b572e3712c301e6ebf4b34e6225d7e18b
2014-01-27 15:13:17 -08:00
Mark Salyzyn 4295841ebe liblog: Interface to support abstracting log read
(cherry picked from commit 6c1b07fbbd)

Change-Id: Iedc55c1316029b4bb72f51cc656b53b0e3f90aee
2014-01-27 15:10:39 -08:00
Mark Salyzyn a6aad4cdb3 libcutils: Move list.c to inlines on list.h
(cherry picked from commit 0ea3624b3e)

Change-Id: I0572555a194d2560e74dfbf07abcec05e9a276a2
2014-01-27 15:04:56 -08:00
Colin Cross 892af2303f am 9222d911: am c8518616: am 02f68c4b: am 4800e20e: Merge "system/core: rename aarch64 target to arm64"
* commit '9222d911a89d30a9b0537e8cdb95401be3a4999e':
  system/core: rename aarch64 target to arm64
2014-01-24 21:24:52 +00:00
Colin Cross d4146e6091 system/core: rename aarch64 target to arm64
Rename aarch64 build targets to arm64.  The gcc toolchain is still
aarch64.

Change-Id: Ia92d8a50824e5329cf00fd6f4f92eae112b7f3a3
2014-01-23 18:01:14 -08:00
Colin Cross adc09abb85 am 7d076b3b: am b36cfdb7: am 4b53b014: am 5bd11b48: Merge changes Ib13d9654,I98723ccd
* commit '7d076b3bf32e0d211d9d27964cc74dafd65afee3':
  system/core: remove $(KERNEL_HEADERS) from includes
  libcutils: fix atomic_memory_store_barrier
2014-01-24 00:41:20 +00:00
Colin Cross 3510637c85 libcutils: fix atomic_memory_store_barrier
dmb isht is not a valid instruction, fix it to be dmb ishst
(data memory barrier, inner shareable, on writes).

Change-Id: I98723ccd8618b7863cb55da53dc29b979c9905a5
2014-01-22 19:04:28 -08:00
Mark Salyzyn d7ad4e409e libsysutils: SocketListener export release
* Foreground thread (legacy) closes connection by
  reporting false return value for onDataAvailable.
* Background thread can choose instead to close the
  connection asynchronously by calling release, must
  return true for the onDataAvailable method.

Change-Id: I70ab37d5c22b02804aa3b4dfb26cc9b75291f8b6
2014-01-22 10:40:39 -08:00
Mark Salyzyn a6e965578e libsysutils: Add iovec/runOnEachSocket
SocketClient:
* Replace sendDataLocked with sendDataLockedv which takes an iovec.
* Add a version of sendData, sendDatav, which takes an iovec.
* do not preserve iovec content through sendDatav

SocketListener:
* Add runOnEachSocket, which allows to to specify a SocketClientCommand to
  run individually on each socket. This allows you to do broadcast-like
  actions customized for each individual socket.
* Client safe list reference counting for sendBroadcast & runOnEach Socket

Signed-off-by: Nick Kralevich <nnk@google.com>
Signed-off-by: Mark Salyzyn <salyzyn@google.com>

Change-Id: I716f89c01b4cb7af900045c7e41fac1492defb06
2014-01-22 10:40:30 -08:00
Christopher Ferris 64ca5ade85 am 758c8636: am 6ecdff5b: am f7adcfc8: am 17b9c827: Merge "Add PROT_* constants not found on windows."
* commit '758c8636c6804f67db0b05617ff37f0a0d0ba859':
  Add PROT_* constants not found on windows.
2014-01-17 20:11:23 +00:00
Christopher Ferris 6c625f6717 resolved conflicts for merge of 47fa9064 to master
Change-Id: I53fb8ff2dfbefe6246385e624c5c3525cc6f4253
2014-01-17 11:56:04 -08:00
Christopher Ferris 0dbce4564b Add PROT_* constants not found on windows.
Change-Id: Ic515363ed66dfb2d8e1a6fdfa274508b3a91311d
2014-01-17 08:25:26 -08:00
Mark Salyzyn 9e03ce45f9 liblog: Add const pedantics
Change-Id: I819695b778ac08fcfc9b1a87f3f86e5715f53084
2014-01-16 18:04:57 -08:00
Christopher Ferris 46756821c4 Rewrite libbacktrace to be all C++.
This includes removing the map_info.c source and replacing it with the
BacktraceMap class to handle all map related code.

Change all callers of libbacktrace map functionality.

Also modify the corkscrew thread code so that it doesn't need to build
the map twice (once in the corkscrew format and once in the libbacktrace
format).

Change-Id: I32865a39f83a3dd6f958fc03c2759ba47d12382e
2014-01-16 16:12:29 -08:00
Mark Salyzyn 8d1fdb5093 liblog: Add liblog test suite
Change-Id: Ia457d518b4e7ff37e840336ff0c48583709700d4
2014-01-16 16:04:17 -08:00
Mark Salyzyn 2e44a9ea25 liblog: deprecate export LOGGER ioctl definitions
Change-Id: I150cad9309255bec2b8bc7230c744e9bbb1b9578
2014-01-16 15:05:29 -08:00
Doug Zongker d0f2c265d8 Merge "add the pre-recovery service" 2014-01-16 22:41:24 +00:00
Mark Salyzyn 24239a99ff Merge "liblog: deprecate export of LOGGER_LOG_* defines" 2014-01-16 21:51:03 +00:00
Doug Zongker 7baebf1345 add the pre-recovery service
Add a service called "pre-recovery" which is normally stopped but can
be started by the system server when we want to go into recovery.  It
will do any preparation needed (currently needed to handle update
packages that reside on an encrypted /data partition) and then set
sys.powerctl when it's ready to actually reboot.

Bug: 12188746
Change-Id: I894a4cb200395a0f6d7fe643ed4c2ac0a45d2052
2014-01-16 08:54:59 -08:00
Glenn Kasten 1c3e16fb40 Miscellaneous updates to <system/audio.h>
Add single-precision floating-point PCM format:
    - AUDIO_FORMAT_PCM_SUB_FLOAT
    - AUDIO_FORMAT_PCM_FLOAT

Add symbols to replace hard-coded constants in code:
    - AUDIO_IO_HANDLE_NONE
    - AUDIO_IN_ACOUSTICS_NONE
    - AUDIO_INTERLEAVE_*
    - AUDIO_STREAM_MIN

Update comments.

Fix whitespace in switch statement.

Change-Id: I61862c188ebac06657b5d9887164edc24b8ab8f5
2014-01-15 14:11:27 -08:00
Glenn Kasten 765aef9c13 Merge "Add AUDIO_SESSION_ALLOCATE" 2014-01-15 00:15:37 +00:00
Glenn Kasten b4f2b4eac4 Add AUDIO_SESSION_ALLOCATE
Change-Id: I045f2f04520bc474666c43a0ff1568f0fab3567c
2014-01-14 16:14:18 -08:00
Elliott Hughes 49cf122d25 am 7b80c138: am 7c7d76f4: am ab3d5036: am d47ffb88: Merge "AArch64: Add atomic functions"
* commit '7b80c1381581bd3c0c28440236e043888c49087d':
  AArch64: Add atomic functions
2014-01-14 23:43:47 +00:00
Elliott Hughes d47ffb8890 Merge "AArch64: Add atomic functions" 2014-01-14 23:32:22 +00:00
Ashok Bhat c15d2ce5fc AArch64: Add atomic functions
This patch adds atomic functions for AArch64. The functions
will be revisited later for potential optimizations using
assembly or otherwise.

This patch also introduces new 64-bit atomic functions for
LP64 platforms.

Change-Id: Id2127dd01cea65025f939e955d73d27e95d8687e
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2014-01-14 12:45:58 -08:00
Mark Salyzyn 73459a5c87 liblog: deprecate export of LOGGER_LOG_* defines
Change-Id: I263af8e889f8f2ad91b91757caf90a4d17823dab
2014-01-14 07:51:14 -08:00
Christopher Ferris 4167d7e5c2 resolved conflicts for merge of 8791ee5c to master
Change-Id: I107bb055941809331c451c1d903f231f07a86ece
2014-01-13 18:14:11 -08:00
Christopher Ferris 20303f856f Next phase of the move, reformat use C++ features.
Use the libbacktrace C++ interface instead of the C interface in debuggerd.

Reformat the debuggerd code to be closer to Google C++ style.

Fix all debuggerd casts to be C++ casts.

Add a frame number to the frame data structure for ease of formatting and
add another FormatFrameData function.

Change the format_test to use the new FormatFrameData function.

Modify all of the backtrace_test to use the C++ interface.

Change-Id: I10e1610861acf7f4a3ad53276b74971cfbfda464
2014-01-13 14:21:52 -08:00
Mike Lockwood d2e798b530 libusbhost: Add usb_device_set_configuration and usb_device_set_interface
usb_device_set_configuration is to support devices with multiple configurations
usb_device_set_interface supports switching between interfaces with alternate settings

Also moved zero string index checking to usb_device_get_string

Change-Id: I34610b25f135894a0cf752a33e5738d4314d7122
2014-01-13 09:54:13 -08:00
Christopher Ferris bc12d6329e Move BACKTRACE_NO_TID to BACKTRACE_CURRENT_THREAD.
Use a bit better name for this. The other name was a bit confusing.

Change-Id: I1261f2ee3854a9c8b82133ad0bfbbbe48b43c9ac

(cherry picked from commit 242b1a8c7a)

Conflicts:
	libbacktrace/Backtrace.cpp
2014-01-09 15:49:39 -08:00
Christopher Ferris 038ac694b3 Move CallStack to libbacktrace.
Fix a small bug in the Printer for strings that didn't properly
prepend the prefix.

(cherry picked from commit 9b0e074c6d)

Change-Id: I78bfa3f76864c34f33fb439bf20dfc85616f1077
2014-01-09 15:09:13 -08:00
Mark Salyzyn 153b370624 liblog: resolve build warning messages
Change-Id: Icc6f1f2c926a008efc4df71022cfde8d0e285880
2014-01-09 10:42:20 -08:00
Christopher Ferris a74ead0fd6 resolved conflicts for merge of 72f204de to master
Change-Id: I7345014d00c669aea5e27ea50b2ac658145b068b
2014-01-08 16:20:50 -08:00
Christopher Ferris 9846497f79 Refactor to share map_info amongst threads.
Allow the use of the same map info to be shared when getting information on
multiple threads from the same pid.

Change-Id: I2e460e20154a10f4894ae563331fb32179e4551f
2014-01-08 15:32:28 -08:00
Mark Salyzyn c96a44888a liblog: drop use of sys/cdefs.h
Change-Id: I44ea5d6b572e3712c301e6ebf4b34e6225d7e18b
2014-01-03 17:40:20 -08:00
Mark Salyzyn 105a83e854 Merge "Revert "liblog: Add liblog test suite"" 2014-01-04 01:01:33 +00:00
Mark Salyzyn 20727babc7 Revert "liblog: Add liblog test suite"
This reverts commit 46abc52296.

Change-Id: Iced83fdfa7de061c0495920ea28a9468023706d3
2014-01-04 00:41:16 +00:00
Mark Salyzyn 7cc2336316 Merge changes Ia6d6821e,I1e1a55d1,Ic26e9dba,Iedc55c13
* changes:
  liblog: Add liblog test suite
  logcat: Incorporate liblog reading API
  debuggerd: Incorporate liblog reading API
  liblog: Interface to support abstracting log read
2014-01-03 22:49:35 +00:00
Rom Lemarchand e3f0c079b3 am 79b6b7f0: am 1892fe66: am c8d7d2d6: am 5234147c: Merge "move sync headers from include to libsync"
* commit '79b6b7f0fdb14fcd8c336ed8f1c0a5b481bb8697':
  move sync headers from include to libsync
2014-01-03 21:42:21 +00:00
Rom Lemarchand ddc20de148 move sync headers from include to libsync
Make sw_sync.h private

Change-Id: I0b120ebe81fd4a191b7aa4b6a8de4f64d16e2b3e
2014-01-03 21:27:05 +00:00
Mark Salyzyn 46abc52296 liblog: Add liblog test suite
Change-Id: Ia6d6821e8546e0eccacab812d39d529ea0372c6a
2014-01-02 12:54:07 -08:00
Mark Salyzyn 6c1b07fbbd liblog: Interface to support abstracting log read
Change-Id: Iedc55c1316029b4bb72f51cc656b53b0e3f90aee
2014-01-02 12:53:53 -08:00
Colin Cross d809eace0c am 9f34b141: am 85d5d611: am c4f4e5e2: am cd8b953e: Merge changes I2d3fef08,Idb828aa4,Ica764b1f,I9ae8887b,I376fad86,I4d00a9dd
* commit '9f34b141b301f15111de2ff0efb3d76379b46f1c':
  libion: update to latest uapi header
  libion: return -errno from ion_close
  libion: add include for size_t
  libion: add NULL checks
  libion: clean up whitespace
  libion: move ion.h into local include directory
2013-12-19 22:12:51 +00:00
Colin Cross cd8b953ede Merge changes I2d3fef08,Idb828aa4,Ica764b1f,I9ae8887b,I376fad86,I4d00a9dd
* changes:
  libion: update to latest uapi header
  libion: return -errno from ion_close
  libion: add include for size_t
  libion: add NULL checks
  libion: clean up whitespace
  libion: move ion.h into local include directory
2013-12-19 21:49:48 +00:00
Colin Cross dfe747ada3 Merge "ion: update struct and type definitions to match kernel header" 2013-12-19 21:18:51 +00:00
Brian Carlstrom 0e90bb97cb am 137ab19a: am b37b53bf: am 87942c9a: am b3bfe881: Merge "Make libutils Looper independent of frameworks/native"
* commit '137ab19a0a196a419636b078f94aef23b1172335':
  Make libutils Looper independent of frameworks/native
2013-12-19 07:58:21 +00:00
Brian Carlstrom 1693d7e48f Make libutils Looper independent of frameworks/native
Change-Id: I1dacca10a3cd7601abc3451b69ed761bf71c38fe
2013-12-18 22:32:13 -08:00
Rom Lemarchand 969eac8161 ion: update struct and type definitions to match kernel header
- Replacing struct ion_handle * with ion_user_handle_t
- Replacing heap_mask field name with heap_id_mask

Change-Id: Iaba1ccc62b9398a7b37c5a734bc21a9ecbbc8277
2013-12-18 18:24:50 -08:00
Colin Cross 03c932dffa libion: move ion.h into local include directory
Export it to users of libion with LOCAL_C_EXPORT_INCLUDE_DIRS

Change-Id: I4d00a9dd2e99953723994d0304ca77e0ad50a3a9
2013-12-18 18:24:50 -08:00
Elliott Hughes fed76f8515 am 63824e92: am 980093ca: am 348856fa: am 532f4658: Merge "AArch64: Correction of struct surface_t"
* commit '63824e923aca6fe15942beee00b258ea6119e459':
  AArch64: Correction of struct surface_t
2013-12-16 20:03:17 +00:00
Elliott Hughes c29664284b am 49a88c3c: am 410a1966: am fd382f2e: am fd7eabe4: Merge "Pixelflinger: Add AArch64 support to pixelflinger JIT."
* commit '49a88c3cf38e9c17a756434880fb01971018a9c6':
  Pixelflinger: Add AArch64 support to pixelflinger JIT.
2013-12-16 19:55:21 +00:00
Elliott Hughes 532f465823 Merge "AArch64: Correction of struct surface_t" 2013-12-16 19:50:17 +00:00
Elliott Hughes fd7eabe442 Merge "Pixelflinger: Add AArch64 support to pixelflinger JIT." 2013-12-16 19:42:55 +00:00
Elliott Hughes f73c009a3d am aa8dc146: am 41e9ee24: am feb539b6: am e1a475c0: Merge "Force alignment of data buffer used to process netlink messages"
* commit 'aa8dc14665003abbbeebed3b113c3083b3f342c7':
  Force alignment of data buffer used to process netlink messages
2013-12-14 00:27:09 +00:00
Elliott Hughes e1a475c0b4 Merge "Force alignment of data buffer used to process netlink messages" 2013-12-14 00:13:32 +00:00
Narayan Kamath cec7e7e3ea am 153c03ac: am df39ce39: am d61266d0: am 4928d8d0: Merge "Fix ExtractEntryToFile."
* commit '153c03acc247ef283ed27d83e9286425b651a816':
  Fix ExtractEntryToFile.
2013-12-13 22:19:37 +00:00
Narayan Kamath 00a258cec7 Fix ExtractEntryToFile.
We would always write uncompressed data at offset 0 instead
of the current filedescriptor offset.

Also adds a unit-test & a clarifying comment on the API.

Change-Id: If44757e96dde504ce63d81b4dec7115fc6f6d5fb
2013-12-13 17:56:57 +00:00
Elliott Hughes 260854c0b0 am ed20fef0: am a99f0b6e: am 5b8daae0: am a67b39cb: Merge "Pixelflinger: Fix issue of pointers being stored in ints"
* commit 'ed20fef0630d02395abab6a073a5717ddfbfaa8d':
  Pixelflinger: Fix issue of pointers being stored in ints
2013-12-12 21:33:04 +00:00
Ashok Bhat 658f89dc5c Pixelflinger: Add AArch64 support to pixelflinger JIT.
See the comment-block at the top of Aarch64Assembler.cpp
for overview on how AArch64 support has been implemented

In addition, this commit contains
[x] AArch64 inline asm versions of gglmul series of
    functions and a new unit test bench to test the
    functions

[x] Assembly implementations of scanline_col32cb16blend
    and scanline_t32cb16blend for AArch64, with unit
    test bench

Change-Id: I915cded9e1d39d9a2a70bf8a0394b8a0064d1eb4
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2013-12-12 17:30:13 +00:00
Ashok Bhat d10afb1748 Pixelflinger: Fix issue of pointers being stored in ints
Pixelflinger's code makes assumptions, at certain places,
that pointers can be stored as ints. This patch makes use
of uintptr_t wherever pointers are stored as int or cast
to int.

Change-Id: Ie76f425cbc82ac038a747f77a95bd31774f4a8e8
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2013-12-12 17:30:13 +00:00
Marcus Oakland 6053564160 AArch64: Correction of struct surface_t
The struct in the union with GGLSurface in struct surface_t assumed
that the reserved field, which corresponds to the GGLsizei version
field in the GGLSurface structure (where GGLsizei is define as being
ssize_t in the system/core/include/pixelflinger/pixelflinger.h header
file) is uint32_t. That is appropriate to the 32-bit system but is
not appropriate to the 64-bit system, where ssize_t is 64-bits rather
than 32-bits.

The 32-bit system has also been tested and has no regression
because of this change.

Change-Id: I5cd84fd4a18fa0e63e27975f7b3d3e95b99cea58
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
2013-12-10 18:13:26 +00:00
Mark Salyzyn 9880128af2 Merge changes I7d9db1e2,I48b0942a,I0572555a
* changes:
  liblog: whitespace cleanup
  libsysutils: Get rid of warnings
  libcutils: Move list.c to inlines on list.h
2013-12-06 19:12:28 +00:00
Narayan Kamath fe4d0a1065 am cb7092d9: am 48a6d3de: am ac3ab308: Merge "Fix Mac OS build for libziparchive."
* commit 'cb7092d9f602dcbe8c8c7b2eeec5858e1c35cc39':
  Fix Mac OS build for libziparchive.
2013-12-06 18:37:12 +00:00
Narayan Kamath 48a6d3de59 am ac3ab308: Merge "Fix Mac OS build for libziparchive."
* commit 'ac3ab308f657f70e2747734d5ff2158aa943b25e':
  Fix Mac OS build for libziparchive.
2013-12-06 10:32:07 -08:00
Narayan Kamath 574c3b35df Fix Mac OS build for libziparchive.
BSD off_t are implicitly 64 bit so the platform
doesn't define off64_t.

Change-Id: I51cbe94ead01d2d6bc7c5010d9472487bee7c2d3
2013-12-06 18:27:53 +00:00
Narayan Kamath 52d07d2056 am f591bbc2: am 51a1d4e3: am a2125077: Merge "Unify zipfile implementations : Step 1."
* commit 'f591bbc247cf3535c8b5e162058769db4aa3d4af':
  Unify zipfile implementations : Step 1.
2013-12-06 16:08:40 +00:00
Narayan Kamath 51a1d4e3f6 am a2125077: Merge "Unify zipfile implementations : Step 1."
* commit 'a2125077e104941f797f93fbe6bfad22ef60a1d8':
  Unify zipfile implementations : Step 1.
2013-12-06 05:37:39 -08:00
The Android Open Source Project 7fc7a07b23 Merge commit '252d9030cd4b2e3e6cf13fa33f328eccedb5e26c' into HEAD 2013-12-05 12:38:34 -08:00
Mark Salyzyn 0ea3624b3e libcutils: Move list.c to inlines on list.h
Change-Id: I0572555a194d2560e74dfbf07abcec05e9a276a2
2013-12-05 07:33:21 -08:00
Narayan Kamath 7462f02f82 Unify zipfile implementations : Step 1.
Extract zip file processing logic from libdvm into a
standalone library.

This library is a stricter than the libdvm library in
several ways:
- Duplicate zip entry names are now disallowed. Files with
  such entries will fail to parse.
- We now verify CD file size information with the individual
  file header information. (This was pointed out as a deficiency
  of this implementation in past discussions.)
- We also add support for crc checking, which means we might
  need to parse the optional data descriptor footer (if one
  exists).

We also provide an API for iterating over the entries of
a zip file. This library is optimized for two use cases :

- Lookup for a single entry in the file, with the intention
  of processing or extracting the data associated with that
  entry
- Iterating over all entries in a file *and* processing
  / extracting their data.

Change-Id: Ia87de6184ef753cc470b0af755c47a4f92ac8198
2013-12-04 13:28:40 +00:00
The Android Open Source Project 66ed50af68 Merge commit '536dea9d61a032e64bbe584a97463c6638ead009' into HEAD
Change-Id: I5c469a4b738629d99d721cad7ded02d6c35f56d5
2013-11-22 13:44:43 -08:00
Elliott Hughes fd91129d5b am bbdfc0c4: am dd2ac3de: am d966eebf: Merge "Fix build."
* commit 'bbdfc0c4124d838d16b65ef96cf4285dbe8ae038':
  Fix build.
2013-11-21 23:00:24 -08:00
Elliott Hughes bbdfc0c412 am dd2ac3de: am d966eebf: Merge "Fix build."
* commit 'dd2ac3de625e6c0328a0f70530d8ade0d2151bfc':
  Fix build.
2013-11-21 22:18:38 -08:00
Elliott Hughes f98e4bf7fb Fix build.
Change-Id: I6552bf9f83faa97bd5a844381aceb3ef85f86c76
2013-11-21 22:09:46 -08:00
Lorenzo Colitti 4fe95effe5 am 85fddd86: am cbc32e9f: Merge "Support parsing RDNSS ND options from netlink."
* commit '85fddd867b06cf10ba8f79d0d37c4b65fa47cf8a':
  Support parsing RDNSS ND options from netlink.
2013-11-21 17:01:44 -08:00
Lorenzo Colitti c7eec83f08 Support parsing RDNSS ND options from netlink.
The RDNSS options (RFC 6106) used to configure DNS servers via
router advertisements are passed from the kernel to userspace via
RTM_NEWNDUSEROPT netlink messages. Add code to NetlinkEvent to
parse them.

Also fix a compiler warning and a couple of style issues.

[Cherry-pick of b185e90dcc]

Bug: 9180552
Change-Id: I6c532c8f0ceef3afdc977a431a036df398013e1a
2013-11-20 10:31:19 +09:00
Lorenzo Colitti 526b838c9d Switch back to subsystem "net" for netlink events.
The change to enable address tracking via netlink incorrectly
changed the subsystem of rtnetlink events from "net" to
"interface". This broke interface add/delete notifications,
which come from the kernel with subsystem "net".

Switch back to "net" and deal with address tracking via new
action codes instead of a new subsystem.

[Cherry-pick of f34861346d]

Bug: 10433320
Change-Id: Ibf30efb426949dfd02304cc1d9adb1c005a539a6
2013-11-20 10:29:42 +09:00
Lorenzo Colitti 381f70f52a Parse IP address changes in NetlinkEvent.
This adds support for parsing RTM_NEWADDR and RTM_DELADDR
netlink messages received on netd's netlink socket and
formatting them them so NetlinkHandler can process them.

Address changes are notified in subsystem "address". Interface
changes, which used to be notified in subsystem "net", are now
notified in subsystem "interface" to avoid confusion.

[Cherry-pick of a4b4e9ad8e]

Bug: 10232006
Change-Id: I93a50e8de17014e118a42f5cc0eb90a0cbfa73cc
2013-11-20 10:29:05 +09:00
Christopher Ferris 242b1a8c7a Move BACKTRACE_NO_TID to BACKTRACE_CURRENT_THREAD.
Use a bit better name for this. The other name was a bit confusing.

Change-Id: I1261f2ee3854a9c8b82133ad0bfbbbe48b43c9ac
2013-11-12 12:14:51 -08:00
Christopher Ferris 7f3c8f9c5b Remove hack for mingw compiler.
The __BEGIN_DECLS/__END_DECLS macro is now defined for mingw.

Change-Id: Icd09b92a83e982ac0ed3eb34df4c1d79de21941e
2013-11-08 16:26:59 -08:00
Narayan Kamath ab9189893d Fix mingw windows host build.
__BEGIN_DECLS isn't defined on this platform and
it appears to be missing sys/cdefs.h

Change-Id: I13cc557700198590cf717e3007dee738043ac3bf
2013-11-08 15:59:46 +00:00
Rom Lemarchand efaf929691 Merge "ion: update struct and type definitions to match kernel header" 2013-11-07 13:30:00 +00:00
Christopher Ferris aca6a4c8af am 5e860ce2: am d6f9be1b: Merge "Fix include files in backtrace.h."
* commit '5e860ce246b9235debc6a04325c7c1983c2b277e':
  Fix include files in backtrace.h.
2013-11-06 17:47:16 -08:00
Christopher Ferris e57912da92 Fix include files in backtrace.h.
(cherry picked from commit 0893258222)

Change-Id: I37a78a9472b94ae84a84d871bfa9a070ff882699
2013-11-06 17:34:38 -08:00
Christopher Ferris 0893258222 Fix include files in backtrace.h.
Change-Id: Iaaa98b12bbf231ea43ee12f5a3f5ba0a3e4a15d6
2013-11-06 17:19:53 -08:00
Christopher Ferris 9b0e074c6d Move CallStack to libbacktrace.
Fix a small bug in the Printer for strings that didn't properly
prepend the prefix.

Change-Id: I33c63841ef6e07728ab3195886539d82b38ee19a
2013-11-06 12:37:14 -08:00
Rom Lemarchand a97f22aaf1 ion: update struct and type definitions to match kernel header
- Replacing struct ion_handle * with ion_user_handle_t
- Replacing heap_mask field name with heap_id_mask

Change-Id: Iaba1ccc62b9398a7b37c5a734bc21a9ecbbc8277
2013-11-06 08:29:02 -08:00
Christopher Ferris 0186edee58 am 2e47c8ac: am 1e1bae1b: am c2945850: Merge "Add some clarifying defines."
* commit '2e47c8ac74e070d62cfb46355c7c04797657c594':
  Add some clarifying defines.
2013-11-05 14:22:20 -08:00
Christopher Ferris 2e47c8ac74 am 1e1bae1b: am c2945850: Merge "Add some clarifying defines."
* commit '1e1bae1b0fc750f60ef9a2531850bbcf27ba6610':
  Add some clarifying defines.
2013-11-05 11:48:55 -08:00
Christopher Ferris cbfc7302fb Add some clarifying defines.
In order to be explicit in the Backtrace::Create() calls, adding a couple
of defines and some comments to describe what they mean.

Change-Id: I6ad08c529791821496a95fa33cea1c95b0a7eada
2013-11-05 11:05:32 -08:00
Lorenzo Colitti b185e90dcc Support parsing RDNSS ND options from netlink.
The RDNSS options (RFC 6106) used to configure DNS servers via
router advertisements are passed from the kernel to userspace via
RTM_NEWNDUSEROPT netlink messages. Add code to NetlinkEvent to
parse them.

Also fix a compiler warning and a couple of style issues.

Bug: 9180552
Change-Id: I6c532c8f0ceef3afdc977a431a036df398013e1a
2013-11-01 14:05:02 +09:00
Chris Dearman b518aeb5e3 Force alignment of data buffer used to process netlink messages
This avoids any overhead associated with accessing unaligned data
while processing netlink messages.

Change-Id: I1ea13051816ef46b6627594121d98cda130ac609
2013-10-30 15:42:26 -07:00
Christopher Ferris 74160cb775 am 6b7b6541: am b5c24e09: am 8c58086c: Merge "More libbacktrace fixes."
* commit '6b7b65417aead0189681c12d9162f31e8bc9b3e5':
  More libbacktrace fixes.
2013-10-30 14:33:32 -07:00
Christopher Ferris 6b7b65417a am b5c24e09: am 8c58086c: Merge "More libbacktrace fixes."
* commit 'b5c24e096d34e0f096d574f2aa799cd2dc6fc7db':
  More libbacktrace fixes.
2013-10-30 14:31:48 -07:00
Igor Murashkin de2eae31b3 am 39f18c9e: am 1b84e0a3: Merge "utils: Add ProcessCallStack to collect stack traces for all threads in a process" into klp-dev
* commit '39f18c9ece973a0eaff7e982a120de63f31ee5c0':
  utils: Add ProcessCallStack to collect stack traces for all threads in a process
2013-10-30 14:18:46 -07:00
Igor Murashkin 39f18c9ece am 1b84e0a3: Merge "utils: Add ProcessCallStack to collect stack traces for all threads in a process" into klp-dev
* commit '1b84e0a3145f1497fc2259608d8830f371526ece':
  utils: Add ProcessCallStack to collect stack traces for all threads in a process
2013-10-30 14:16:18 -07:00
Christopher Ferris 8ed46278be More libbacktrace fixes.
Included in minor fix ups is the addition of a warning macro to replace
all of the ALOGW calls.

Fix a race where multiple threads could be attempting to unwind the threads
of the current process at the same time.

Bug: 8410085

Change-Id: I02a65dc778dde690e5f95fc8ff069a32d0832fd1
2013-10-30 14:14:54 -07:00
Christopher Ferris 6996f91809 resolved conflicts for merge of 0433d622 to master
Change-Id: I6799c3fe8900ddcb2e9fe3032793dbb0996cf177
2013-10-29 13:56:52 -07:00
Christopher Ferris 0433d62291 am 0f26808e: am 98f87d92: Merge "Rewrite libbacktrace using C++."
* commit '0f26808e2c696f8bdcca644e0ddae2af9f753ada':
  Rewrite libbacktrace using C++.
2013-10-29 13:27:54 -07:00
Christopher Ferris 17e91d44ed Rewrite libbacktrace using C++.
The old code was essentially trying to be C++ in C and was awkward. This
change makes it all objects with a thin layer that C code can use.

There is a C++ backtrace object that is not very useful, this code will
replace it.

This change also includes moving the backtrace test to a gtest, and adding
coverage of all major functionality.

Bug: 8410085
Change-Id: Iae0f1b09b3dd60395f71ed66010c1ea5cdd37841
2013-10-28 17:55:25 -07:00
Igor Murashkin ec79ef2e7b utils: Add ProcessCallStack to collect stack traces for all threads in a process
- Also add a Printer class (print lines to logcat, fd, or strings)

Bug: 11324229
Change-Id: I78435ed49aa196a0efb45bf9b2d58b62c41737d3
2013-10-25 19:24:56 -07:00
Kenny Root df206c8e46 am 33d1e629: am 4ff9c3f7: am aab1670b: Merge "Add support for ECDSA P-256 with SHA256"
* commit '33d1e6294f609c4f417905239bd5a086f3ef880f':
  Add support for ECDSA P-256 with SHA256
2013-10-10 11:17:57 -07:00
Kenny Root 33d1e6294f am 4ff9c3f7: am aab1670b: Merge "Add support for ECDSA P-256 with SHA256"
* commit '4ff9c3f7d89fe418290288d0925f257f0fe15f20':
  Add support for ECDSA P-256 with SHA256
2013-10-10 11:14:49 -07:00
Kenny Root db0850c3b6 Add support for ECDSA P-256 with SHA256
This adds a small EC library that is capable of verifying a signature of
SHA256 with ECDSA on the NIST P-256 curve.

Change-Id: I2a16639c92a77e8e4783c47ffbc56676de56eb59
2013-10-09 17:04:50 -07:00
Christopher Ferris 5eaafe2306 am 44b23fd6: am 3f0a5e9c: am 71a8aa34: Merge "Update comment from review."
* commit '44b23fd6aac2303adc446b1b3ed5b7c05d6d7865':
  Update comment from review.
2013-10-01 18:45:49 -07:00
Christopher Ferris 0686535360 am 7eb36bf4: am 7f21826c: am f41cf208: Merge "Create a single backtrace library."
* commit '7eb36bf4b6e8de5fb28e6e5172f93e6973cd6bd2':
  Create a single backtrace library.
2013-10-01 18:45:49 -07:00
Christopher Ferris 44b23fd6aa am 3f0a5e9c: am 71a8aa34: Merge "Update comment from review."
* commit '3f0a5e9c9f279546fc5c89c61053554ef6eb43d3':
  Update comment from review.
2013-09-30 11:25:55 -07:00
Christopher Ferris 7eb36bf4b6 am 7f21826c: am f41cf208: Merge "Create a single backtrace library."
* commit '7f21826c478088b4717cc6c7d1ff6ef3d7da464a':
  Create a single backtrace library.
2013-09-30 11:17:31 -07:00
Christopher Ferris 474afff229 Update comment from review.
Missed this typo that enh pointed out.

Bug: 8410085
Change-Id: Ic636ae218fc153bc5e3b1a0fdc2f7161980e5eec
2013-09-30 11:16:17 -07:00
Christopher Ferris 7fb22878d4 Create a single backtrace library.
This library will be used to abstract away getting backtrace
data from how it is implemented. This is the first step to
replacing libcorkscrew with libunwind.

Bug: 8410085
Change-Id: Ie8f159e96a055d378e1ddc72d40239fba4cf52b7
2013-09-28 12:26:35 -07:00
Dmitry Shmidt 32b7108b64 Remove non-existing klog_close()
Change-Id: I49f6047b3f6d90ffa1601bd9348ae69d87b63aed
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2013-09-27 15:11:54 -07:00
Adam Lesinski 849b7aa5be am 71ddce59: am bbe4c49b: Merge "Moves libmemtrack header to standard location" into klp-dev
* commit '71ddce59275e70c34015b0fa87c10384ab1876cd':
  Moves libmemtrack header to standard location
2013-09-26 10:31:28 -07:00
Adam Lesinski 71ddce5927 am bbe4c49b: Merge "Moves libmemtrack header to standard location" into klp-dev
* commit 'bbe4c49b4eb664ca018ff670a4dcbf5b9de9a810':
  Moves libmemtrack header to standard location
2013-09-26 10:27:55 -07:00
jp abgrall 01b5618347 am 8f4c14f1: am 08170103: am 91962669: Merge "cutils: list: add list_for_each_safe"
* commit '8f4c14f1e7fd0a2f9b46151ccc83c49b41e830ef':
  cutils: list: add list_for_each_safe
2013-09-25 11:37:46 -07:00
jp abgrall 8f4c14f1e7 am 08170103: am 91962669: Merge "cutils: list: add list_for_each_safe"
* commit '0817010366feecb53fc70719b3784dd7c6d66b55':
  cutils: list: add list_for_each_safe
2013-09-25 11:36:02 -07:00
jp abgrall 9196266939 Merge "cutils: list: add list_for_each_safe" 2013-09-25 18:31:44 +00:00
Doug Zongker 8e5b63d045 mincrypt: support SHA-256 hash algorithm
- adds a library to compute the SHA-256 hash

- updates the RSA verifier to take an argument specifying either SHA-1
  or SHA-256

- updates DumpPublicKey to with new "key" version numbers for
  specifying SHA-256

- adds new argument to adb auth code to maintain existing behavior

(cherry picked from commit 515e1639ef)

Change-Id: Ib35643b3d864742e817ac6e725499b451e45afcf
2013-09-25 09:26:34 -07:00
Adam Lesinski 481b947d68 Moves libmemtrack header to standard location
Change-Id: If8c80003bc2f042c67ffdf38469407de3c2fda2c
2013-09-23 18:42:41 -07:00
Jeff Sharkey aa4a3228f0 am 9729b415: am 44d6342c: Remove mkdir() side effect, add .nomedia, utils.
* commit '9729b41574ca5e5e87c86b203a2096cbdc72cfea':
  Remove mkdir() side effect, add .nomedia, utils.
2013-09-20 15:59:37 -07:00
Jeff Sharkey 44d6342caa Remove mkdir() side effect, add .nomedia, utils.
Before this change, FUSE lookup() would have the side effect of
creating the directory on behalf of apps.  This resulted in most
directories being created just by Settings trying to measure disk
space.  Instead, we're switching to have vold do directory creation
when an app doesn't have enough permissions.

Create fs_mkdirs() utility to create all parent directories in a
path as needed.  Allow traversal (+x) into /storage directories.

Fix FUSE derived permissions to be case insensitive.  Mark well-known
directories as .nomedia when created.

Bug: 10577808, 10330221
Change-Id: I53114f2e63ffbe6de4ba6a72d94a232523231cad
2013-09-20 14:21:09 -07:00
Kenny Root d975f37294 Remove UniquePtr.h copy
This was copied from libcore/include quite a while ago, but the
canonical version has since moved out to a generic library called
libnativehelper. All users of this header should already have
libnativehelper on their include path, so switching to the canonical
version is as easy as removing the "utils/" part.

Change-Id: Iae8e59bf3eee573bfa78381866989934e5bbf19d
2013-09-20 10:47:08 -07:00
Mathias Agopian 126cdc2c4b am a512c1ca: am 7b445a8e: Merge "Fix rotation in camera2 API" into klp-dev
* commit 'a512c1ca6322b54b6a74be01be53d537f5a81da4':
  Fix rotation in camera2 API
2013-09-18 15:39:19 -07:00
Mathias Agopian 7b445a8e3a Merge "Fix rotation in camera2 API" into klp-dev 2013-09-18 22:31:28 +00:00
Jamie Gennis 02e20daebe am 3929efb9: am 9d773b97: Merge "trace: Add support for tracing 64-bit ints." into klp-dev
* commit '3929efb9d480b8893eb3e95cd282dd161ab8fb12':
  trace: Add support for tracing 64-bit ints.
2013-09-18 12:25:52 -07:00
Jamie Gennis f1921c7949 trace: Add support for tracing 64-bit ints.
Bug: 10624956
Change-Id: Ie1d7c8ac16b5a5ec1e63e4fb1863f5b1ab2b59e8
2013-09-18 19:03:45 +00:00
Mathias Agopian 96675ed91f Fix rotation in camera2 API
Bug: 10804238
Change-Id: I093945789d9c6d373392fc9dfd18ec2c6058d3b9
2013-09-17 23:48:54 -07:00
Todd Poynor fea5b4d44b healthd: move charger executable to healthd charger mode
* Add healthd charger mode ops
* Check for executable invocation as "charger", set charger mode if so
* Incorporate charger executable as healthd charger mode

Change-Id: I4a44e7a4c3a65ae9be94491f7f498aa48d4f8a84
2013-09-17 14:41:07 -07:00
Andrew Boie 30fb83b6e5 cutils: list: add list_for_each_safe
For when you want to modify the list whilst iterating over it.

Change-Id: I84432892890987c218e56883c35e52c9ff0240a3
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2013-09-12 15:30:40 -07:00
Kenny Root 0ddfe115b5 Use canonical UniquePtr.h file
Change-Id: I88b51b76120a83d2165d44421f29bcb5fd6d62a2
2013-09-11 23:41:23 -07:00
Eric Laurent 04c12ca061 Add HOTWORD audio source to audio.h
- This is a complimentary change to the one adding this new source to
  MediaRecorder.java

Bug: 10640877.

Change-Id: Ie213e82b5a60dad2a277cef367c2f5e4df70df06
2013-09-09 15:42:31 -07:00
Lorenzo Colitti f34861346d Switch back to subsystem "net" for netlink events.
The change to enable address tracking via netlink incorrectly
changed the subsystem of rtnetlink events from "net" to
"interface". This broke interface add/delete notifications,
which come from the kernel with subsystem "net".

Switch back to "net" and deal with address tracking via new
action codes instead of a new subsystem.

Bug: 10433320
Change-Id: Ibf30efb426949dfd02304cc1d9adb1c005a539a6
2013-09-03 00:25:14 +09:00
Jeff Brown 8ecc7afca4 Add helpers for audio remote submix devices.
Bug: 10265163
Change-Id: Iea7ecab4f2a655b719ff14b04c757d6dbd7a7ef3
2013-08-16 20:21:10 -07:00
Jesse Hall 1e26356da1 Replace sRGB_888 with sRGB_X_8888
Bug: 10357459
Change-Id: I23a3eca77acd8b4b40b1a67e7c050a7245b1821a
2013-08-16 08:40:52 -07:00
Lorenzo Colitti a4b4e9ad8e Parse IP address changes in NetlinkEvent.
This adds support for parsing RTM_NEWADDR and RTM_DELADDR
netlink messages received on netd's netlink socket and
formatting them them so NetlinkHandler can process them.

Address changes are notified in subsystem "address". Interface
changes, which used to be notified in subsystem "net", are now
notified in subsystem "interface" to avoid confusion.

Bug: 10232006
Change-Id: I93a50e8de17014e118a42f5cc0eb90a0cbfa73cc
2013-08-14 19:50:22 +09:00
Jeff Sharkey dfe0cbab3f Richer SD card permissions through FUSE.
Changes the FUSE daemon to synthesize an Android-specific set of
filesystem permissions, even when the underlying media storage is
permissionless.  This is designed to support several features:

First, apps can access their own files in /Android/data/com.example/
without requiring any external storage permissions.  This is enabled
by allowing o+x on parent directories, and assigning the UID owner
based on the directory name (package name).  The mapping from package
to appId is parsed from packages.list, which is updated when apps are
added/removed.  Changes are observed through inotify.  It creates
missing package name directories when requested and valid.

Second, support for separate permissions for photos and audio/video
content on the device through new GIDs which are assigned based on
top-level directory names.

Finally, support for multi-user separation on the same physical media
through new /Android/user/ directory, which will be bind-mounted
into place.  It recursively applies the above rules to each secondary
user.

rwxrwx--x root:sdcard_rw     /
rwxrwx--- root:sdcard_pics   /Pictures
rwxrwx--- root:sdcard_av     /Music

rwxrwx--x root:sdcard_rw     /Android
rwxrwx--x root:sdcard_rw     /Android/data
rwxrwx--- u0_a12:sdcard_rw   /Android/data/com.example
rwxrwx--x root:sdcard_rw     /Android/obb/
rwxrwx--- u0_a12:sdcard_rw   /Android/obb/com.example

rwxrwx--- root:sdcard_all    /Android/user
rwxrwx--x root:sdcard_rw     /Android/user/10
rwxrwx--- u10_a12:sdcard_rw  /Android/user/10/Android/data/com.example

These derived permissions are disabled by default.  Switched option
parsing to getopt().

Change-Id: I21bf5d79d13f0f07a6a116122b16395f4f97505b
2013-08-08 17:26:41 -07:00
Glenn Kasten 9de3fd115a Merge "Add audio_input_flags_t" 2013-08-05 19:11:34 +00:00
Dmitry Shmidt be06210c50 libnetutils: Get mtu together with dhcp session results
Change-Id: I517fd1f62d451b07466a21a2b770d9ce389dac19
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2013-08-02 14:09:09 -07:00
Glenn Kasten c051ffd7c2 Add audio_input_flags_t
Change-Id: Ie65398cc67218cc63be4baa8a2a61d0ea591a2a3
2013-08-02 10:30:42 -07:00
Eino-Ville Talvala b4802413a7 Merge "Window: Add query for consumer usage bits." 2013-08-02 00:23:02 +00:00
Mathias Agopian ddff623049 minor tweaks to FlattenableUtils
Change-Id: Ibfceec36434baac92c8815a18d902375d3fa1a6d
2013-08-01 12:47:58 -07:00
Dianne Hackborn 0f10d0abf3 Add a new utf8-to-utf16 conversion function.
Change-Id: I957c22fb219596ca4239db7a169473d3894b09eb
2013-07-31 16:04:39 -07:00
Mathias Agopian 6d611a891d Make Flattenable not virtual (libutils)
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
2013-07-31 13:41:41 -07:00
Eino-Ville Talvala f88a5b4f88 Window: Add query for consumer usage bits.
Bug: 9592202
Change-Id: Ied2fdb985dc59dd9c0f26c515353abdc37f0eb77
2013-07-30 21:38:13 +00:00
Alex Ray 0d8f3d6c45 libutils: give BasicHashtableImpl a virtual destructor
Change-Id: I4ec590b060d732af5fe525670becbe778684247b
2013-07-30 13:57:01 -07:00
Alex Ray 567ea471ff utils: move thread enums to system/core
Change-Id: Ia97963cc9acf8661d01355786f5e7e7bf54581c2
2013-07-30 13:57:01 -07:00
Michael Wright d614ee4557 Added bitwise-or and bitwise-and to BitSet
Change-Id: I9bbf41f9d2d4a2593b0e6d7d8be7e283f985bade
2013-07-30 13:57:01 -07:00
Tim Murray 214c701ec6 Make trace macros slightly more robust
Change-Id: I9544eb7b27fc1a971cabadd8d5b4b4b80678febf
2013-07-30 13:57:01 -07:00
Mathias Agopian 8db925f777 remove unused declarations and reformat
Change-Id: I4e168fb62c275e02621c4b6e0c6000d0f006c327
2013-07-30 13:57:01 -07:00
Mathias Agopian d3d3fceb7c remove reserved virtual slots
these consume small amount of space (plt) in every library that
links against libutils.

Change-Id: I1b6b3dd9098aa5a051243f7a5dbf91cd7dcb8b2c
2013-07-30 13:57:01 -07:00
Mathias Agopian 4485d0d966 new String8, String16 ctors to initialize empty static strings with static 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
2013-07-30 13:57:01 -07:00
Mathias Agopian 9eb2a3b1c0 libutils clean-up
Change-Id: I6ff4cfc736751de2912c697f954e45e275f2d386
2013-07-30 13:57:01 -07:00
Dianne Hackborn 19159f9002 Add new Looper API to check whether the looper is idle.
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
2013-07-30 13:57:01 -07:00
Mathias Agopian d34a8cad1e improved CallStack a bit
- added a ctor that updates and dumps the stack immediately
- added a "logtag" parameter to dump()

Change-Id: Ie51c256071d282591752243bdb4f68cf9ff8829d
2013-07-30 13:57:01 -07:00
Mathias Agopian 6cd548c715 Fix a crasher with RefBase debugging and vectors of wp<>
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
2013-07-30 13:57:01 -07:00
Jesse Hall b73559d86c Add Vector::resize()
Bug: 8384764
Change-Id: Icee83d389f3e555eba7d419b64c8d52a9aa21b8b
2013-07-30 13:57:01 -07:00
Romain Guy 31ba37f1c8 Add Thread::isRunning and Condition::signal(WakeUpType)
The signal() method is useful to choose whether to wake up one or
all threads.

Change-Id: I062ab6d3ddd306a9fb735549ea140e2a76eed75a
2013-07-30 13:57:01 -07:00
Mathias Agopian 6090df85a8 rename binder services main thread to Binder_*
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
2013-07-30 13:57:01 -07:00
Naseer Ahmed ca3e2a276a utils: Allow non android namespaces to use ALOGD_IF_SLOW
Change-Id: I9207b64954fae2f56cc5f6aa5796a2e737400623
2013-07-30 13:57:00 -07:00
Chris Craik 551fcf4fe3 Add LinearAllocator
Moving from external/webkit/Source/WebCore/platform/graphics/android/utils/

Change-Id: If91830aa9b207dbc8692b2ca7c4a0b76778addd5
2013-07-30 13:57:00 -07:00
Igor Murashkin a27c1e0839 utils: fix warnings for unused parameters
Change-Id: Ibfb755a30ba2923669060fe0aed019beecbe38a1
2013-07-30 13:57:00 -07:00
Alex Ray fcb349ff75 utils: clarify scoped tracing functionality
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
2013-07-30 13:57:00 -07:00
Alex Ray 5b2d36e38a utils: Use cutils tracing functionality.
Tracing functionality has moved to cutils.

Change-Id: Ie78ccc1d59dd5178f5058fbc3858a37f9adce552
2013-07-30 13:57:00 -07:00
Romain Guy 5ca402a4e2 Add LruCache::Iterator
Required by libhwui

Change-Id: I164b9a4a82d89d132da01a56535c0df084de86f7
2013-07-30 13:57:00 -07:00
Romain Guy bdce9baa88 Add another ifndef and a couple of methods to LruCache
The new methods on LruCache are needed by libhwui to manage
the cache of paths.

Change-Id: If54fa325c54e2b04e7fe5dfe6dad66066c40127c
2013-07-30 13:57:00 -07:00
Romain Guy b3176acd5f Add #ifndef to prevent multiple definitions
Change-Id: Ib861eee0f333fe29290437b7e67623622d8dabd0
2013-07-30 13:57:00 -07:00
Andy McFadden 45ad8f44d0 Reduce emulator logspam
The emulator doesn't support systrace, but we should point that out
at most once per process.

Bug 7436352

Change-Id: I06b2c1ea0df6c02c11cd2496423c337f8d7c62a1
2013-07-30 13:57:00 -07:00
Raph Levien b6ea175b6b Add an LRU cache plus hashing primitives
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
2013-07-30 13:57:00 -07:00
Jason Simmons 61db1669f4 Ensure that Vector::erase() returns a valid iterator
Vector::erase may reallocate the Vector's storage while removing an element.
However, erase() calls begin() before calling removeItemsAt(), thus caching
a pointer the the Vector's old storage.  If the storage is reallocated,
the iterator returned by erase() will be based on the old storage pointer
and will thus be invalid.

Change-Id: I2450c55fd418e6b1c558a4ca7c024573abbaa098
2013-07-30 13:57:00 -07:00
Dave Burke d49555291a Revert "Revert "put back the unused virtuals in Vector<>""
This reverts commit 225c66a48cdc3acef21ee380dc134449749d3cb3

Change-Id: If31a04b81052cbc7dd7bf237c07107c33066d03d
2013-07-30 13:57:00 -07:00
Romain Guy 3fc49adfd2 Add runtime debugging capabilities to OpenGL
The shell property debug.egl.trace can now be set to:

0
  disables tracing
1
  logs all GL calls
error
  checks glGetError after every GL call, logs a stack trace on error
systrace
  logs each GL call to systrace

Change-Id: I34a2a2d4e19c373fd9eaa1b0cd93e67c87378996
2013-07-30 13:57:00 -07:00
Kenny Root b9fd6f9864 Add TEMP_FAILURE_RETRY to ZipUtils
Change-Id: I275c415f14eeffaf9a58d45f3ea014d766441ec3
2013-07-30 13:57:00 -07:00
Mathias Agopian e79aadd143 minor SharedBuffer clean-up
Change-Id: If38b7ce85806ae628c00f2c938de4e3f75142543
2013-07-30 13:57:00 -07:00
Mathias Agopian 919fa297fe Add a way to retrieve a Region as a SharedBuffer
Change-Id: Ia53cb905fbc88f899521658545f990fb9217b1e1
2013-07-30 13:57:00 -07:00
Mathias Agopian 11b9acf765 Revert "put back the unused virtuals in Vector<>"
This reverts commit 1648d4c13ba2eff3ea14cd87ee94028458a39f97.

Bug: 6977192

Change-Id: Idbb6b239aaed4fb1c054ce943f6ba06ede3492bb
2013-07-30 13:57:00 -07:00
Tareq A. Siraj cacf429b56 Fixed clang build error for libgui
Fixed the order of the statements in ANDROID_SINGLETON_STATIC_INSTANCE
macro so that the templated static member variable initialization
comes before the instantiation of the Singleton class. This
fixes the clang compile error.

Change-Id: Ic47d17e152b657f2dff3191ccc3770753fdf002b
Author: Tareq A. Siraj <tareq.a.siraj@intel.com>
Reviewed-by: Edwin Vane <edwin.vane@intel.com>
2013-07-30 13:57:00 -07:00
Mathias Agopian 8d0c1a0316 put back the unused virtuals in Vector<>
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
2013-07-30 13:57:00 -07:00
Mathias Agopian 156eb98091 get rid of mirrorItemAt() which isn't used anywhere
Change-Id: Id6f2dbeed21cabc127d39538c0ff464077ada83f
2013-07-30 13:57:00 -07:00
Mathias Agopian 2497a1524d improve [un]marshalling of non-binder objects
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
2013-07-30 13:57:00 -07:00
Jeff Brown 6454f46166 Add a very simple helper function to log slow functions.
Change-Id: I2e2e072206d02b572a330dd25857c161b5b563bf
2013-07-30 13:57:00 -07:00
Mathias Agopian bdf73c7efc improve Vector<> safety checks
- 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
2013-07-30 13:56:59 -07:00
Mathias Agopian 5363183d2a libutils cleanup: remove unused or seldom used code from misc.{cpp|h}
Change-Id: I72206f16619d81887e3b85603494563faab3b445
2013-07-30 13:56:59 -07:00
Mathias Agopian 67b5851491 We now have a real list of displays.
displays can be dynamically added or removed, and the
list is part of the SF's transaction.

Change-Id: I4186ea39f1317c0e7c044f869004017738968fab
2013-07-30 13:56:59 -07:00
Nick Pelly af1e7b7721 Add elapsedRealtimeNano(), and use CLOCK_BOOTTIME where possible.
Change-Id: I4231c8ca32663e6e2cb5b7c126d091f837373807
2013-07-30 13:56:59 -07:00
Mathias Agopian e6bee12f94 one more step towards multiple display support
- remove dependency on cached state in validateVisibility
- get rid of mVertices and mTransformedBounds
- get rid of validateVisibility
- get rid of unlockPageFlip
- handleTransaction now returns a dirty region
- computevisibileregion now uses window-manager space
2013-07-30 13:56:59 -07:00
Jeff Brown dd1b0378ce Support looper callbacks based on smart pointers.
Bug: 6559630
Change-Id: I5a667f219f431838638acefbc9fa6afa610971bd
2013-07-30 13:56:59 -07:00
Eino-Ville Talvala 970701fbd2 Add camera as an ATRACE tag
Change-Id: Ib4f22d593836c4b973d122efa114d359f1529914
2013-07-30 13:56:59 -07:00
Jeff Brown 5705e69825 Delete unused poll() code.
We don't need this code anymore and it is just in the way.

Bug: 6559630
Change-Id: I1dc9decf85d5ea1feab159c2985da6c20baffdd5
2013-07-30 13:56:59 -07:00
Jeff Brown 55195d745c Remove unused statistics code.
Bug: 6559630
Change-Id: Iacdf4bb4c1c125c09305cbd8cb443c7c80cfc010
2013-07-30 13:56:59 -07:00
Jamie Gennis 69fc3d4e1e libutils: add a tracing tag for video
Change-Id: Icbecc7184844e95ee81a558b0a54d5513d5cf59f
2013-07-30 13:56:59 -07:00
Dianne Hackborn c1309d74e8 Add callback hack to find out when to reload system properties.
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
2013-07-30 13:56:59 -07:00
Glenn Kasten 7e6e7e0a54 Add audio tag to systrace
Change-Id: I4a558c43e4ccd81a4ed94684c5fad6b3c486bd14
2013-07-30 13:56:59 -07:00
Andy Stadler 90dd9e188e Add System Tracing capability to Sync Manager
See also: Change-Id: Ia8bc01adbba345a568405b0ac8ade96e56b40cc1

Change-Id: I2678974cf85464fbc09072b06f647a0787e6e23f
2013-07-30 13:56:59 -07:00
Dianne Hackborn 265743abde Add traces for window manager and activity manager.
Change-Id: I6677ca64164f234efc7856ddd173ad6989b4f59e
2013-07-30 13:56:59 -07:00
Glenn Kasten 77ed15a31a Scheduling group cleanup
Remove C++ APIs androidSetThreadSchedulingGroup and
androidGetThreadSchedulingGroup, and the ANDROID_TGROUP_* constants.

Former callers of these should now use the C APIs set_sched_policy and
get_sched_policy, and the SP_* constants.

Note: debug.sys.noschedgroups is not supported by the C APIs,
this needs to be discussed.

Change-Id: I32bbfc539ef4090faf9ef0320380e8cca9eae07c
2013-07-30 13:56:59 -07:00
Jeff Brown 2c1627dc49 Support tokenizing arbitrary content.
Bug: 6110399
Change-Id: I37be63b68934fd451e6dffbf7d6079553619c0a3
2013-07-30 13:56:59 -07:00
Chris Craik 52d59e2c48 Add webview tracing bit
Change-Id: I82e54f5eeb2666a255e372fd3bfcc54c1b3d76a0
2013-07-30 13:56:59 -07:00
Colin Cross 3abdea92ef frameworks/native: move Zip* from libandroidfw to libutils
ZipUtils is needed by build/tools, move it from libandroidfw
(frameworks/base) to libutils (frameworks/native).

Change-Id: Ib8c41134ccdec6d6aa8d49860f8dddef49a24783
2013-07-30 13:56:59 -07:00
Kenny Root cd19987605 Add UniquePtr.h to frameworks/native
This is a copy of libcore's UniquePtr.h header which is used until we
get C++11 which has std::unique_ptr which is essentially the same.

Taken from libcore project at commit
3e6dd45baa0d7f9b4fa06f4ade76e088b59cc7bf

Change-Id: I7537b016f9eae33bfc4c57b24f86260909719ab8
2013-07-30 13:56:59 -07:00
Jeff Brown 27e6eaae87 Add a simple work queue abstraction.
Makes it easy to schedule a bunch of work to happen in parallel.

Change-Id: Id9c0e52fc8b6d78d2b9ed4c2ee47abce0a01775c
2013-07-30 13:56:59 -07:00
Jeff Brown 9a0a76df1e Add traits to common utils data structures.
Many of our basic data structures are trivially movable using
memcpy() even if they are not trivially constructable, destructable
or copyable.  It's worth taking advantage of this *ahem* trait.

Adding trivial_move_trait to String16 reduces appt running
time on frameworks/base/core/res by 40%!

Change-Id: I630a1a027e2d0ded96856e4ca042ea82906289fe
2013-07-30 13:56:59 -07:00
Jeff Brown 59322a36c6 Expose the set of enabled tags.
This is used by the Java trace wrappers to avoid JNI overhead
when trace tags are disabled.

Also added a new tag for the input subsystem and view hierarchy.

Change-Id: Ia04a507e42a37b1d3bbb19859e6c07a92f4fe9aa
2013-07-30 13:56:59 -07:00
Andreas Huber f03fd0a870 Instead of hardcoding OMX component names in our code, support
a config file instead.

Change-Id: I5835903ab9f1c4a22ccc605ca99ed966767adf57
2013-07-30 13:56:59 -07:00
Mathias Agopian 2bd99599bb split utils/threads.h into multiple headers
AndroidDefs.h - C/C++ enums and types
Mutex.h - Mutex class declaration
Condition.h - Condition class declaration
RWLock.h - RWLock class declaration
Thread.h - Thread class declaration
AndroidThreads.h - low-level thread creation functions
threads.h - includes all the above for backward source compatibility

Change-Id: Ia2f80c175333b59a41d1720985810bb2346e94cb
Note: implementations are still in Threads.cpp
2013-07-30 13:56:59 -07:00
Jamie Gennis 2ccfe1a060 libutils: add a system-wide tracing utility
This change adds some utility functionality for doing userland tracing
into the kernel trace log.

Change-Id: Id0a8cee9ea515b1d8765afd1cecf472a88b4b9e8
2013-07-30 13:56:59 -07:00
Al Sutton 6c865b58aa Xcode 4.3 compatibility checkin
The update compiler in Xcode 4.3 (and 4.4) requires lookups into dependant
bases of class templates to be qualified. This checkin fixes the issues
raised by the compiler by implementing the this-> recommendation from
the llvm page at http://clang.llvm.org/compatibility.html#dep_lookup_bases

Signed-off-by: Al Sutton <al@funkyandroid.com>
2013-07-30 13:56:59 -07:00
Mathias Agopian c2b7fb1f91 frameworks/base refactoring.
step 2: move libutils headers to their new home: androidfw

Change-Id: I14624ba23db92a81f2cb929f104386e1fab293ef
2013-07-30 13:56:59 -07:00
Glenn Kasten 73e263e5d6 Update comments
We no longer put the filename at start of file.

Change-Id: Ic435b159a23105681e3d4a6cb1ac097bc853302e
2013-07-30 13:56:58 -07:00
Ramanan Rajeswaran 5db7269c89 DO NOT MERGE
Revert "Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc."

This reverts commit c1496d2d9a496e4aba817a58ecb9e07fe55cdba5.

Change-Id: If60df742b19c925cc99b20d01108b84415b124ad
2013-07-30 13:56:58 -07:00
Dianne Hackborn 413022bc90 Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
Change-Id: I519d6cdc527a402d93b98df17a64fc1da52ad598
2013-07-30 13:56:58 -07:00
Ramanan Rajeswaran 81beedda90 DO NOT MERGE
Revert "Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc."

This reverts commit c1496d2d9a496e4aba817a58ecb9e07fe55cdba5.

Change-Id: If60df742b19c925cc99b20d01108b84415b124ad
2013-07-30 13:56:58 -07:00
Dianne Hackborn 78eb46c8e8 aapt now sorts the strings in the resource string pool.
In our current environment with very many translations, this can
save a lot of RAM -- for example over 200K in Gmail just by sorting
the strings in the Gmail .apk (not the framework).

Also add a new aapt command to print the contents of the resource
table string pool.

Change-Id: I1da037b3e2c377b890833ff57ab158965314ac48
2013-07-30 13:56:58 -07:00
Dianne Hackborn e956c5c197 Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
Change-Id: I519d6cdc527a402d93b98df17a64fc1da52ad598
2013-07-30 13:56:58 -07:00
Glenn Kasten d731f07cc9 Thread::getTid returns pid_t gettid() after run
This is needed when the parent or any other thread besides the child
needs access to the child's kernel tid.

Change-Id: Ib148505913eb78314cfd76657c30d7b20663dffd
2013-07-30 13:56:58 -07:00
Evgeniy Stepanov 4cc144c4fb Fix compilation with Clang.
warning: extraneous template parameter list in template specialization
template<>

Change-Id: If3e3e1d06a018343b40ac0984dfd9ecc12629f8d
2013-07-30 13:56:58 -07:00
Steve Block 1b781ab0e0 Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE
See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
2013-07-30 13:56:58 -07:00
Steve Block a1d3391b1e Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE
See https://android-git.corp.google.com/g/156801

Bug: 5449033
Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
2013-07-30 13:56:58 -07:00
Joe Onorato 53ddace1a5 Add a new ui mode for "appliance"
The idea is that this is a device which is more-or-less headless.  It
might have some limited interaction capabilities, but it's not something
that you want to rely on having.

Change-Id: Ib92f53a120bf83de781728011721a4859def7d9f
2013-07-30 13:56:58 -07:00
Romain Guy 587042dfa3 GenerationCache::get would return a random value instead of NULL
Bug #5401917

This was causing a ton of random crashes in apps.

Change-Id: I9069a060824ec89115cd3bcd38beaeb9ecc4488e
2013-07-30 13:56:58 -07:00
Jeff Brown 142dbcd817 Use sized integer typedefs in hash_type specializations.
Change-Id: I3f9e004db2f3be1cb43a885c3ae142f251fd6845
2013-07-30 13:56:58 -07:00
Jeff Brown e735f23018 Add a basic hashtable data structure, with tests!
The basic hashtable is intended to be used to support a variety
of different datastructures such as map, set, multimap,
multiset, linkedmap, generationcache, etc.

Consequently its interface is fairly primitive.

The basic hashtable supports copy-on-write style functionality
using SharedBuffer.

The change introduces a simple generic function in TypeHelpers for
specifying hash functions.  The idea is to add template
specializations of hash_type<T> next to the relevant data structures
such as String8, String16, sp<T>, etc.

Change-Id: I2c479229e9d4527b4fbfe3b8b04776a2fd32c973
2013-07-30 13:56:58 -07:00
Jeff Brown f36821289c Clean up GenerationCache.
Use const references to keys and values where appropriate to avoid
copying them unnecessarily.

Deleted some dead code.

Simplified a few pieces that were doing unnecessary redundant work.

Change-Id: Ib2145b7094a40db2d679e05dafe050fe1e87b846
2013-07-30 13:56:58 -07:00
Jamie Gennis 7451bb4410 BlobCache: implement cache serialization
This change adds serialization and deserialization functionality to
BlobCache, conforming to the Flattenable interface.

Change-Id: Ibc99cb1c3d015f363d57d0713eabccec07ff975e
2013-07-30 13:56:58 -07:00
Jamie Gennis 90f43dce84 BlobCache: remove the mutex locking
This change removes the mutex from the BlobCache class.  The caller must
be responsible for thread synchronization in order to properly implement
the Flattenable interface, which is coming soon.  Otherwise would be the
potential for the cache contents to change between the call to the
getFlattenedSize and flatten methods.  Because the caller must do this
synchronization anyway there's no reason to also some synchronization
inside BlobCache.

Change-Id: Ie1f4f6f82b78744f46a41ce863cac0cad276a20e
2013-07-30 13:56:58 -07:00
Jeff Brown ea45b01f9b Use libcorkscrew for stack unwinding.
Change-Id: Iee1ee5a2018ab8cfc1ce12ec2a124809245eaa02
2013-07-30 13:56:58 -07:00
Romain Guy 5cd324794c Reduce the size of libhwui by 50%
This change removes unnessary symbols. All symbols are hidden by
default, public APIs with exported symbols are explicitly marked
with ANDROID_API.

Change-Id: I692fde432a86c12108de1cfd1f6504919a7d5f3f
2013-07-30 13:56:58 -07:00
Jeff Brown aa983c91ca Fix regression in CursorWindow.copyStingToBuffer.
Bug: 5332296

Change-Id: Iff9eed786f0a8293b6156f883a66a322ddad5e99
2013-07-30 13:56:58 -07:00
Dianne Hackborn 6c31a2fb60 Add mechanism for Parcel to not allow FDs to be written to it.
This is to help implement issue #5224703.

Change-Id: I026a5890495537d15b57fe61227a640aac806d46
2013-07-30 13:56:58 -07:00
Andreas Huber 8ddbed9efd A new API "androidGetThreadPriority"
Change-Id: I6baeead8c70460863343fd557250635fb1e6a170
2013-07-30 13:56:58 -07:00
Josiah Gaskin 9ee3fc4dc3 Fix String16 operator+ to actually work
This change fixes the String16 utility's operator+ function.

Change-Id: Ibed7b07277b50bf178febc72b6ce497893e66f17
2013-07-30 13:56:57 -07:00
Mathias Agopian ad09965050 fix a memory leak and memory corruption in RefBase
we would leak a weakref_impl if a RefBase was never incWeak()'ed.
there was also a dangling pointer that would cause memory corruption
and double-delete when a custom destroyer was used to delay the
execution of ~RefBase.

it turns out that the custom destroyer feature caused most of the
problems, so it's now gone. The only client was SurfaceFlinger
who now handles things on its own.

RefBase is essentially back its "gingerbread" state, but the
code was slightly cleaned-up.

Bug: 5151207, 5084978
Change-Id: Id6ef1d707f96d96366f75068f77b30e0ce2722a5
2013-07-30 13:56:57 -07:00
Mathias Agopian c3a5225d4e Fix typos and use new HAL_PRIORITY_URGENT_DISPLAY constant
Change-Id: I703f8a96dd0dfec427e74363ad95729bfefc95c7
2013-07-30 13:56:57 -07:00
Jeff Brown 4ccb2fc8e1 Refactor input reader to add stylus support.
Bug: 5064702

Introduced the concept of an InputListener to further decouple
the InputReader from the InputDispatcher.  The InputListener
exposes just the minimum interface that the InputReader needs
to communicate with the outside world.  The InputReader
passes arguments to the InputListener by reference, which makes
it easy to queue them up.

Consolidated all of the InputReader locks into one simple global
Mutex.  The reason this wasn't done before was due to potential
re-entrance in outbound calls to the InputDispatcher.  To fix this,
the InputReader now queues up all of the events it wants to send
using a QueuedInputListener, then flushes them outside of the
critical section after all of the event processing is finished.
Removing all of the InputMapper locks greatly simplifies the
implementation.

Added tests for new stylus features such as buttons, tool types,
and hovering.

Added some helpers to BitSet32 to handle common code patterns
like finding the first marked bit and clearing it.

Fixed a bug in VelocityTracker where the wrong pointer trace
could get cleared when handling ACTION_POINTER_DOWN.  Oops.

Changed PointerCoords so it no longer stores useless zero
axis values.  Removed editAxisValue because it is not very
useful when all zero value axes are absent and therefore
cannot be edited in place.

Added dispatch of stylus hover events.

Added support for distance and tool types.

Change-Id: I4cf14d134fcb1db7d10be5f2af7b37deef8f8468
2013-07-30 13:56:57 -07:00
Kenny Root 88761b2796 Move extract native libraries to JNI code
The built-in ZipFile class was quite a long time to find an unpack
libraries. Move everything to using the libutils ZipFileRO class that
goes quite a bit faster. Initial measurements are 6 times faster than
the Java code.

Also, read files off the disk and compare their CRC against the APK's
CRC to see if we need to write the new file to disk. This also cuts down
the bootup time by up to a second per APK that has native files.

Change-Id: Ic464a7969a17368fb6a6b81d026888c4136c7603
2013-07-30 13:56:57 -07:00
Jeff Brown 7e01e60e5e Remove unimplemented memory pool.
dlmalloc does such a great job that we don't need a pool anyways.

Change-Id: I105b28c4a5c491543959190c7c0a9de75a5b8052
2013-07-30 13:56:57 -07:00
Glenn Kasten 6fbe0a86a8 Add C++ thread API androidGetThreadSchedulingGroup
This API is intended for applications that need to read a thread's
scheduling group, while using the higher-level (C++) family of thread APIs.

Change-Id: I5e58017f74c3989b20b5b1cc2bc4483c95720520
2013-07-30 13:56:57 -07:00
Jeff Brown 82e14f6780 Workaround apps that make assumptions about pointer ids.
Modified the touch input mapper to assign pointer ids sequentially
starting from 0 instead of using the tracking id or slot index
supplied by the driver.  Applications should not depend on this
ordering but some do.  (sigh)

Bug: 4980884
Change-Id: I0dfeb3ac27c57a7102a13c960c760e2a02eb7669
2013-07-30 13:56:57 -07:00
Mathias Agopian 320a2b4103 SF transactions are now O(1) wrt IPC instead of O(N).
Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
2013-07-30 13:56:57 -07:00
Jason Simmons b86c8e4e55 Add a linear transform library to libutils
Change-Id: Icdec5a6bebd9d8f24b3f335f8ec8b09a5810a774
2013-07-30 13:56:57 -07:00
Glenn Kasten 6839e8e9ee Add Thread::join
This new API will be used by applications that previously used the
lower-level pthread APIs (including pthread_join).  Centralizing on the
Thread class instead of pthread will permit additional functionality to
be added later in only one location.

Change-Id: I8460169ac9c61ac9f85752405ed54c94651058d7
2013-07-30 13:56:57 -07:00
Glenn Kasten 5e0243f4d6 Thread ID zero for androidSetThreadSchedulingGroup
Already implemented by androidSetThreadPriority but not documented

Change-Id: I85302b17092952065f3f3a4214d8d8abdd465dbd
2013-07-30 13:56:57 -07:00
Mathias Agopian 7f57eac6a7 Revert "merge various SF fixes from gingerbread to honeycomb-mr2" (DO NOT MERGE)
Also revert all dependent changes:
This reverts commit 8e18668d14adf601cbe5973030c310ec23d88461.
This reverts commit 69b4587bfbb3e98f793959d9123340360fa233a2.
This reverts commit a9c9a4baf24700e8817d47d8ea8da1742caea0b5.
This reverts commit 2c0042b666a969091c931614f2fc0dce2f1cfac8.
This reverts commit f6c8206735e7e078461e5f2aef6e1a1446fdd075.
This reverts commit 24855c09173a6caaec7dcedd0c2d7ce15121d39b.

Change-Id: I33e699640f3f59e42fa03c99a9a1b7af0d27d4d8
2013-07-30 13:56:57 -07:00
Kenny Root 967ad860da Use rand() for MinGW
The version of MinGW we use doesn't have nrand48() which is really lame,
but we need to use libutils in the Windows SDK.

Change-Id: If854c03dbf02bc29e79f49e4539f08c2bf057517
2013-07-30 13:56:57 -07:00
Mathias Agopian 9c8fa9ed41 revert surfaceflinger leak fix as it uncovered a crasher on xoom (DO NOT MERGE)
This reverts commit 52a43990880b27808bcf562afcc4209d34728e6e.

Change-Id: I1856a48f863b051395b8091ddfd1e01292fa1b1e
2013-07-30 13:56:57 -07:00
Mathias Agopian 267ba69c2e Revert "revert surfaceflinger leak fix as it uncovered a crasher on xoom"
This reverts commit af6edba59e250adbdfa5b3c3be134f70d8c38a16.

Change-Id: I7793d3ca8a4d20a2b188364f47854328ab5f586d
2013-07-30 13:56:57 -07:00
Mathias Agopian dace0b45d0 revert surfaceflinger leak fix as it uncovered a crasher on xoom
Bug: 4600244
Change-Id: Ia68ebf0f243a051ff6a21b3863e3e5d259bbf7ac
2013-07-30 13:56:57 -07:00
Mathias Agopian 0151ac8945 may fix build on some version of gcc
Change-Id: Ia88787c0432ec84d51fe505fd6a2b6f98ebe8f33
2013-07-30 13:56:57 -07:00
Mathias Agopian 9b6259aa57 fix RefBase so it retains binary-compatibility with gingerbread (DO NOT MERGE)
Bug: 4595257
Change-Id: I1db83149107d7dab1f0b7e73c684e0ff82e17e62
2013-07-30 13:56:57 -07:00
Glenn Kasten a538e268e6 Remove redundant memory barrier
pthread_create already includes the necessary memory barriers:
 - parent at pthread_create : pthread_mutex_unlock(start_mutex)
 - child at __thread_entry : pthread_mutex_lock(start_mutex)

Add lock around uses of mThread.

Added comments:
 - uses of mThread require lock
 - androidCreateRawThreadEtc returned ID is not safe for direct use from non-parent threads.

Change-Id: I18cb296b41ddaf64cf127b57aab31154319b5970
2013-07-30 13:56:57 -07:00
Dianne Hackborn bf7a884f22 Enforce public resource restriction on bag parents.
Need to put some more styles in the SDK to avoid breaking apps.

Also, welcome Android 3.2.

Change-Id: Ia31d07c9b1b91ad868d8630437fdc1b5ae24f37d
2013-07-30 13:56:56 -07:00
Dianne Hackborn 2d57c03872 Add "tv" density for 720p screens.
Change-Id: I028969b007f2fceea66947d77a2ae31ef1d1a630
2013-07-30 13:56:56 -07:00
Dianne Hackborn 4a8bf7977e Small fixes and cleanup of resource config handling.
Change-Id: I402c31b68f2b4825cb4c610a65ee8e1da471c7bb
2013-07-30 13:56:56 -07:00
Dianne Hackborn 19797e22ac Add "television" mode.
Change-Id: Ida1fdb61b036a8b489dbeda196fb4bc82e651b2b
2013-07-30 13:56:56 -07:00
Mathias Agopian d781137601 RefBase subclasses can now decide how they want to be destroyed.
This adds a destroy() virtual on RefBase which
sublasses can implement. destroy() is called
in lieu of the destructor whenthe last strong
ref goes away.
2013-07-30 13:56:56 -07:00
Dianne Hackborn 23138b63df Add new "-swNNNdp" resource qualifier.
Change-Id: I0101e88ca9d8d44138bdcaf571f24b0352f4f6ce
2013-07-30 13:56:56 -07:00
Jamie Gennis 1a20993c10 libutils: add a binary blob cache implementation.
This change adds an implementation of a cache that stores key/value
pairs of unstructured binary blobs.

Change-Id: Idd01fdabedfa3aed6d359a6efb0592967af52651
2013-07-30 13:56:56 -07:00
Christopher Tate 424ec5a8aa Full local backup infrastructure
This is the basic infrastructure for pulling a full(*) backup of the
device's data over an adb(**) connection to the local device.  The
basic process consists of these interacting pieces:

1. The framework's BackupManagerService, which coordinates the
   collection of app data and routing to the destination.

2. A new framework-provided BackupAgent implementation called
   FullBackupAgent, which is instantiated in the target applications'
   processes in turn, and knows how to emit a datastream that contains
   all of the app's saved data files.

3. A new shell-level program called "bu" that is used to bridge from
   adb to the framework's Backup Manager.

4. adb itself, which now knows how to use 'bu' to kick off a backup
   operation and pull the resulting data stream to the desktop host.

5. A system-provided application that verifies with the user that
   an attempted backup/restore operation is in fact expected and to
   be allowed.

The full agent implementation is not used during normal operation of
the delta-based app-customized remote backup process.  Instead it's
used during user-confirmed *full* backup of applications and all their
data to a local destination, e.g. via the adb connection.

The output format is 'tar'.  This makes it very easy for the end
user to examine the resulting dataset, e.g. for purpose of extracting
files for debug purposes; as well as making it easy to contemplate
adding things like a direct gzip stage to the data pipeline during
backup/restore.  It also makes it convenient to construct and maintain
synthetic backup datasets for testing purposes.

Within the tar format, certain artificial conventions are used.
All files are stored within top-level directories according to
their semantic origin:

apps/pkgname/a/  : Application .apk file itself
apps/pkgname/obb/: The application's associated .obb containers
apps/pkgname/f/  : The subtree rooted at the getFilesDir() location
apps/pkgname/db/ : The subtree rooted at the getDatabasePath() parent
apps/pkgname/sp/ : The subtree rooted at the getSharedPrefsFile() parent
apps/pkgname/r/  : Files stored relative to the root of the app's file tree
apps/pkgname/c/  : Reserved for the app's getCacheDir() tree; not stored.

For each package, the first entry in the tar stream is a file called
"_manifest", nominally rooted at apps/pkgname.  This file contains some
metadata about the package whose data is stored in the archive.

The contents of shared storage can optionally be included in the tar
stream. It is placed in the synthetic location:

shared/...

uid/gid are ignored; app uids are assigned at install time, and the
app's data is handled from within its own execution environment, so
will automatically have the app's correct uid.

Forward-locked .apk files are never backed up.  System-partition
.apk files are not backed up unless they have been overridden by a
post-factory upgrade, in which case the current .apk *is* backed up --
i.e. the .apk that matches the on-disk data.  The manifest preceding
each application's portion of the tar stream provides version numbers
and signature blocks for version checking, as well as an indication
of whether the restore logic should expect to install the .apk before
extracting the data.

System packages can designate their own full backup agents.  This is
to manage things like the settings provider which (a) cannot be shut
down on the fly in order to do a clean snapshot of their file trees,
and (b) manage data that is not only irrelevant but actively hostile
to non-identical devices -- CDMA telephony settings would seriously
mess up a GSM device if emplaced there blind, for example.

When a full backup or restore is initiated from adb, the system will
present a confirmation UI that the user must explicitly respond to
within a short [~ 30 seconds] timeout.  This is to avoid the
possibility of malicious desktop-side software secretly grabbing a copy
of all the user's data for nefarious purposes.

(*) The backup is not strictly a full mirror.  In particular, the
    settings database is not cloned; it is handled the same way that
    it is in cloud backup/restore.  This is because some settings
    are actively destructive if cloned onto a different (or
    especially a different-model) device: telephony settings and
    AndroidID are good examples of this.

(**) On the framework side it doesn't care that it's adb; it just
    sends the tar stream to a file descriptor.  This can easily be
    retargeted around whatever transport we might decide to use
    in the future.

KNOWN ISSUES:

* the security UI is desperately ugly; no proper designs have yet
  been done for it
* restore is not yet implemented
* shared storage backup is not yet implemented
* symlinks aren't yet handled, though some infrastructure for
  dealing with them has been put in place.

Change-Id: Ia8347611e23b398af36ea22c36dff0a276b1ce91
2013-07-30 13:56:56 -07:00
Mathias Agopian 58dc2c8101 fix typo in Vector<>:: push_back and push_front
parameter were inverted.

Change-Id: I867b01de5f58354bb9668fa662dd2a7d78dd3b37
2013-07-30 13:56:56 -07:00
Mathias Agopian bc55d727f3 Add some basic STL compatibility to Vector<>
Change-Id: Iaf72623170ee415372c7989d7ba9ff627167449e
2013-07-30 13:56:56 -07:00
Dianne Hackborn aa3a2c5613 Add new resource configurations for screen width/height in "dp".
You can now specify resource configuration variants "wNNNdp"
and "hNNNdp".  These are the minimum screen width/height in "dp"
units.  This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes.  Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted.  To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I22f8afa136b4f274423978c570fa7c9855040496
2013-07-30 13:56:56 -07:00
Mårten Kongstad 3145b38462 Runtime resource overlay, iteration 1.
Runtime resource overlay allows unmodified applications to appear
as if they had been compiled with additional resources defined. See
libs/utils/README for more information.

This commit is the first iteration of runtime resource overlay. It
provides the actual overlay modifications and loading of trusted overlay
packages (ie residing in /vendor) targeting framework-res.apk.

This commit loads exactly one overlay package. The overlay,
if present, must target framework-res.apk and be located at
/vendor/overlay/framework/framework-res.apk.

Change-Id: If26ee7754813004a96c043dba37fbe99fa3919db
2013-07-30 13:56:56 -07:00
Jeff Brown 43550eee5b Refactor how timeouts are calculated.
Added a timeout mechanism to EventHub and InputReader so that
InputMappers can request timeouts to perform delayed processing of
input when needed.

Change-Id: Iec2045baaf4e67690b15eef3c09a58d5cac76897
2013-07-30 13:56:56 -07:00
Mathias Agopian 7c123375ff fix [4093196] Device lock up - log spam with SharedBufferStack: waitForCondition(LockCondition) timed out
a memory corruption happned when the buffer pool was resized
(like when playing a video or using camera) and there was
no current active buffer. In this case, the faulty code
would index into an array at position -1 which corrupted
24 bytes of data.

also improved region validation code (ifdef'ed out by default)

Bug: 4093196
Change-Id: I915c581d131148959d720e00e3892e9186ab733d
2013-07-30 13:56:56 -07:00
Romain Guy 349626eb76 Modify the GL renderer's functor to pass the clip to WebView
Change-Id: If5efe399ca58f3000b2883e24e9f3736a2025184
2013-07-30 13:56:56 -07:00
Jeff Brown 5e35370a3b Improve VelocityTracker numerical stability.
Replaced VelocityTracker with a faster and more accurate
native implementation.  This avoids the duplicate maintenance
overhead of having two implementations.

The new algorithm requires that the sample duration be at least
10ms in order to contribute to the velocity calculation.  This
ensures that the velocity is not severely overestimated when
samples arrive in bursts.

The new algorithm computes the exponentially weighted moving
average using weights based on the relative duration of successive
sample periods.

The new algorithm is also more careful about how it handles
individual pointers going down or up and their effects on the
collected movement traces.  The intent is to preserve the last
known velocity of pointers as they go up while also ensuring
that other motion samples do not count twice in that case.

Bug: 4086785
Change-Id: I2632321232c64d6b8faacdb929e33f60e64dcdd3
2013-07-30 13:56:56 -07:00
Glenn Kasten 29d4d20c24 Bug 4016329 do full string comparisons
Use full string comparisons instead of partial for
  file extension and MIME type.
Do case-insensitive comparison of MIME type and file extensions.
Fix error in comment for String8::getPathExtension.
Remove dead code -- StringTokenizer is unused.

Change-Id: I322be6235abbdaab5f7eafa48926dbb2cf46dc29
2013-07-30 13:56:56 -07:00
Jeff Brown 9ae794de46 Use touch pad gestures to manipulate the pointer.
1. Single finger tap performs a click.
2. Single finger movement moves the pointer (hovers).
3. Button press plus movement performs click or drag.
   While dragging, the pointer follows the finger that is moving
   fastest.  This is important if there are additional fingers
   down on the touch pad for the purpose of applying force
   to an integrated button underneath.
4. Two fingers near each other moving in the same direction
   are coalesced as a swipe gesture under the pointer.
5. Two or more fingers moving in arbitrary directions are
   transformed into touches in the vicinity of the pointer.
   This makes scale/zoom and rotate gestures possible.

Added a native VelocityTracker implementation to enable intelligent
switching of the active pointer during drags.

Change-Id: I5ada57e7f2bdb9b0a791843eb354a8c706b365dc
2013-07-30 13:56:56 -07:00
Romain Guy b6e92ae9a1 Add support for partial invalidates in WebView
Bug #3461349

This change also fixes two bugs that prevented partial invalidates
from working with other views. Both bugs were in our EGL implementation:
they were preventing the caller from comparing the current context/surface
with another context/surface. This was causing HardwareRenderer to always
redraw the entire screen.

Change-Id: I33e096b304d4a0b7e6c8f92930f71d2ece9bebf5
2013-07-30 13:56:56 -07:00
Jeff Brown 3e2e38bc5b Fade out the mouse pointer after inactivity or other events.
Fades out the mouse pointer:
- after 15 seconds of inactivity normally
- after 3 seconds of inactivity in lights out mode
- after a non-modifier key down
- after a touch down

Extended the native Looper to support enqueuing time delayed
messages.  This is used by the PointerController to control
pointer fade timing.

Change-Id: I87792fea7dbe2d9376c78cf354fe3189a484d9da
2013-07-30 13:56:56 -07:00
Fabrice Di Meglio 5a14f4a721 Add TextLayout Cache
- use GenerationCache for caching
- move GenerationCache.h from libs/hwui/utils to include/utils
- add #define for cache activation / deactivation

Change-Id: Ifaf519f0b5e33b087a453e4aa6430162d8438f20
2013-07-30 13:56:56 -07:00
Mathias Agopian 7332f80db5 Fix sp<> conversion operator / constructor
some of the conversion operators were not using the proper
pointer type when calling incStrong/decStrong, usually it
has no bad consequences, but for some implementation
of the ref-counted object it could lead to recording the wrong
owner id.

Change-Id: If574b9069b8a4cf6e0911a992c8f095aba799995
2013-07-30 13:56:56 -07:00
Mathias Agopian 3e0f87541f Fix a wp<> bug where the owner ID would be wrong
this was introduced recently. we make sure to use
the correct owner id (the sp) instead of the wp.

Change-Id: I78fdc6ec0c2d3e687278b70442d74d1924b512a2
2013-07-30 13:56:56 -07:00
Mathias Agopian b26ea8b30f Fix some issues with RefBase debugging.
First slipt sp<> out of RefBase into StrongPointer.h so it can be reused
more easily and to make it clear that it doesn't require RefBase.

Note: the rest of the change only affects the system when DEBUG_REFS is enabled.

The main problem we fix here is that the owner id associated with each
reference could get out of date when a sp<> or wp<> was moved, for
instance when they're used in a Vector< >.

We fix this issue by calling into RefBase::moveReferences from
a template specialization for sp<TYPE> and wp<TYPE> of the
type helpers. RefBase::moveReferences() has then a chance to
update the owner ids.

There is a little bit of trickery to implement this generically in
RefBase, where we need to use a templatized functor that can turn
a sp<TYPE>* casted to a void* into a RefBase*.

Introduced a new debug option DEBUG_REFS_FATAL_SANITY_CHECKS
currently set to 0 by default as there seem to be an issue
with sp<ANativeWindow> which trips the sanity checks.

Change-Id: I4825b21c8ec47d4a0ef35d760760ae0c9cdfbd7f
2013-07-30 13:56:56 -07:00
Glenn Kasten 966a48f3e7 Bug 3362814 Fix SMP race in access to mRequestExit
Also fix an unlikely SMP race in access to mHoldSelf on entry to _threadLoop.

Change-Id: I6cbc0b94739c7dd5e77e8a5ba0da22cdc0b1a4db
2013-07-30 13:56:55 -07:00
Mathias Agopian 84a23fa4a9 Remove RefBase.h dependency on TextOutput.h
Change-Id: I72cd6b98ef82b4868fe1c8ec87862cf43fb4ee73
2013-07-30 13:56:55 -07:00
Mathias Agopian ff49de731f fix [3408713] Dialog window invisible sometimes
weak pointer comparison operators were implemented wrong,
they were using the internal "unsafe" pointer. We could end up
with two "equal" weak pointer pointing to different objects.

this caused KeyedVector keyed by weak pointer to work incorrectly, in
turn causing a window that just got added to a list to be immediately
removed.

Change-Id: Ib191010c39aafa9229109e4211f6c3b2b2f9696d
2013-07-30 13:56:55 -07:00
Chet Haase b90c51a725 Use optimized display lists for all hwaccelerated rendering
Previously, display lists were used only if hardware acceleration
was enabled for an application (hardwareAccelerated=true) *and* if
setDrawingCacheEnabled(true) was called. This change makes the framework
use display lists for all views in an application if hardware acceleration
is enabled.

In addition, display list renderering has been optimized so that
any view's recreation of its own display list (which is necessary whenever
the visuals of that view change) will not cause any other display list
in its parent hierarchy to change. Instead, when there are any visual
changes in the hierarchy, only those views which need to have new
display list content will recreate their display lists.

This optimization works by caching display list references in each
parent display list (so the container of some child will refer to its
child's display list by a reference to the child's display list). Then when
a view needs to recreate its display list, it will do so inside the same
display list object. This will cause the content to get refreshed, but not
the reference to that content. Then when the view hierarchy is redrawn,
it will automatically pick up the new content from the old reference.

This optimization will not necessarily improve performance when applications
need to update the entire view hierarchy or redraw the entire screen, but it does
show significant improvements when redrawing only a portion of the screen,
especially when the regions that are not refreshed are complex and time-
consuming to redraw.

Change-Id: I68d21cac6a224a05703070ec85253220cb001eb4
2013-07-30 13:56:55 -07:00
Shachar Shemesh b69f49bab9 Normalize output from aapt d
Make the output from aapt dump --values resources and aapt dump xmltree normalized, so that it is unambigously displayed
regardless of the content of the strings.

Change-Id: Ia3bff36c4ee1e9a44f474534e154830948beabdf
2013-07-30 13:56:55 -07:00
Jeff Brown 8659f0be9a Add initial support for cursor-based pointing devices.
Some parts stubbed out but you can plug in a mouse and move
a green cursor around to interact with the UI.

Change-Id: I80d597a7f11d3bd92041890f74b3c77326975e6e
2013-07-30 13:56:55 -07:00
Mathias Agopian c974d4dbe0 dump callstack on Surface use error
Change-Id: I38e260dd47349b9af3a999dda683a083a94be16d
2013-07-30 13:56:55 -07:00
Kenny Root e2fa7dc58e Change assets to use 64-bit API
The asset system and supporting libraries were using off_t instead of
off64_t to access files larger than 2GB (32-bit signed). This change
replaces all off_t with off64_t and lseek64.

There is a new utils/Compat.h added for Mac OS compatibility.

Also fixed some size-related compiler warnings.

Bug: 3205336
Change-Id: I9097b3cb7a602e811fe52f245939d8975da55e9e
2013-07-30 13:56:55 -07:00
Jeff Brown 1d618d63c1 Improve support for external keyboards.
Use Vendor ID, Product ID and optionally the Version to
locate keymaps and configuration files for external devices.

Moved virtual key definition parsing to native code so that
EventHub can identify touch screens with virtual keys and load
the appropriate key layout file.

Cleaned up a lot of old code in EventHub.

Fixed a regression in ViewRoot's fallback event handling.

Fixed a minor bug in FileMap that caused it to try to munmap
or close invalid handled when released if the attempt to map
the file failed.

Added a couple of new String8 conveniences for formatting strings.

Modified Tokenizer to fall back to open+read when mmap fails since
we can't mmap sysfs files as needed to open the virtual key
definition files in /sys/board_properties/.

Change-Id: I6ca5e5f9547619fd082ddac47e87ce185da69ee6
2013-07-30 13:56:55 -07:00