Commit Graph

52315 Commits

Author SHA1 Message Date
Wale Ogunwale 376b822728 Added IPCThreadState::blockUntilThreadAvailable() method.
Will be used by the system_server watchdog to monitor the
availability of binder threads in the process to handle
incoming IPC requests.

Bug: 19297165
Change-Id: I39175f3869ad14da5620fddb47f454e6e4ee2b25
2015-04-14 13:17:25 -07:00
Dan Stoza e88e366963 am 6ea912c0: am ddabf640: am a3f8c2aa: Merge "Fix a memory corruption issue when vector resize"
* commit '6ea912c0494fe67d342224b737078dd90b991db6':
  Fix a memory corruption issue when vector resize
2015-04-14 18:38:43 +00:00
Dan Stoza 6ea912c049 am ddabf640: am a3f8c2aa: Merge "Fix a memory corruption issue when vector resize"
* commit 'ddabf640292041fefca86609ee23f4803107cbb2':
  Fix a memory corruption issue when vector resize
2015-04-14 18:18:41 +00:00
Dan Stoza ddabf64029 am a3f8c2aa: Merge "Fix a memory corruption issue when vector resize"
* commit 'a3f8c2aaf1bb82b436306f65b86d25d4ea955d4d':
  Fix a memory corruption issue when vector resize
2015-04-14 18:06:48 +00:00
Dan Stoza a3f8c2aaf1 Merge "Fix a memory corruption issue when vector resize" 2015-04-14 17:50:39 +00:00
Jeff Brown 3bfe51d790 Bypass surface flinger permission check for calls from system.
Early during the boot, before activity manager is ready to handle
permission checks, the system needs to be able to change the display
state.  Added a hardcoded exemption for AID_SYSTEM (which already
has permission to talk to surface flinger anyhow).

Bug: 19029490
Change-Id: I6222edcab8e394e5fb6adf7a982be446e4505a1e
2015-04-10 20:26:51 -07:00
Jeff Sharkey 1044367a73 am a36a43b3: am c200d20e: am dfc30ae3: Merge "Command to move private app data between volumes."
* commit 'a36a43b354b248cef9407de42fb6b87e1c7085f6':
  Command to move private app data between volumes.
2015-04-10 21:32:03 +00:00
Jeff Sharkey a36a43b354 am c200d20e: am dfc30ae3: Merge "Command to move private app data between volumes."
* commit 'c200d20e32af042e92d03574aaededf6d81d27e0':
  Command to move private app data between volumes.
2015-04-10 21:14:54 +00:00
Jeff Sharkey c200d20e32 am dfc30ae3: Merge "Command to move private app data between volumes."
* commit 'dfc30ae393fd610fcbd05a1ecfe7d4834a792de3':
  Command to move private app data between volumes.
2015-04-10 21:08:43 +00:00
Jeff Tinker 899d1a68b0 Merge "Add a method to associate MediaDrm session with MediaCrypto" 2015-04-10 21:04:06 +00:00
Jeff Sharkey dfc30ae393 Merge "Command to move private app data between volumes." 2015-04-10 21:00:51 +00:00
Ronghua Wu 4b7bfa48ff Merge "openmax: add OMX_IndexConfigOperatingRate." 2015-04-10 20:10:42 +00:00
Ashutosh Joshi e734e751bd Merge "Adding a configuration file to support hifi sensors feature." 2015-04-10 18:40:02 +00:00
Ashutosh Joshi f6d8fe5c9a Adding a configuration file to support hifi sensors feature.
Adding an XML file to be used to define the hi-fi sensors feature
by supporting devices.

Change-Id: Id586eff93d0d5a028037c9062d7d9c655587e408
2015-04-10 11:26:02 -07:00
Jeff Tinker ac7d8fe36f Add a method to associate MediaDrm session with MediaCrypto
Previously, to associate a MediaDrm session with MediaCrypto,
the MediaDrm sessionId was passed as initData to the MediaCrypto
constructor.  This is not ideal for two reasons: it's pretty
obscure and you can't change the association without tearing
down the MediaCodec/MediaCrypto and starting all over.  Use
cases like key rotation require being able to update the
MediaDrm session post-construction.  This CL addresses both of
these issues.

bug: 19570317
Change-Id: Iede35e73e9007df13254edaa5877cb4832b28646
2015-04-10 04:10:10 -07:00
Jeff Sharkey e363724230 Command to move private app data between volumes.
New "mvuserdata" command will move all private app data from one
volume UUID to another.  It leverages the existing "cp" toybox
command to do the heavy lifting for all known users, preserving
details like timestamps and permissions.  It invokes restorecon()
to correctly label the new location when the copy is finished.

Changes installd to no longer drop capabilities, so we run as root
again.  This also allows us to exec "cp" with CAP_DAC_OVERRIDE and
CAP_FOWNER still in effect.

Bug: 19993667
Change-Id: I1f407a7c4a1af97ca5afc27b04eb16b4936cbdef
2015-04-10 00:21:35 -07:00
ywen aef0445c6f Fix a memory corruption issue when vector resize
There is memory corruption in below code

const Rect* prev = &dst[prevIndex];
dst.add(Rect(prev->right, top, right, bottom));

prev points to a memory of vector dst, when dst resize in add()
call, the memory that prev points to will be copy to the new
allocated vector memory and the old memory will become undefined

Avoid pointer in this case, use a local copy instead

Change-Id: I4d95ceedd00c8fb615ac153082ade1b1ce0d0fa8
2015-04-10 11:59:52 +05:30
Erik Kline cae1c81ab1 Merge "multinetwork API: native header" 2015-04-10 01:57:19 +00:00
Jeff Tinker 9a498ef115 Add expiration update and keys change events
In support of unprefixed EME

bug: 19771612
bug: 19771431
Change-Id: Ibb8471701a62dedfbf5231ad958e2c33ebb3c42f
2015-04-09 22:44:56 +00:00
Jeff Sharkey 16af1b044e am 8571e647: am 997eb5dd: am 44a38d93: Merge "Start accepting volume UUIDs from framework."
* commit '8571e647da1e9c2227d22034ba6462235273cb02':
  Start accepting volume UUIDs from framework.
2015-04-09 22:17:46 +00:00
Jeff Sharkey 8571e647da am 997eb5dd: am 44a38d93: Merge "Start accepting volume UUIDs from framework."
* commit '997eb5ddfb4ae83a95b0f90837ba67664e79acb0':
  Start accepting volume UUIDs from framework.
2015-04-09 21:57:30 +00:00
Jeff Sharkey 997eb5ddfb am 44a38d93: Merge "Start accepting volume UUIDs from framework."
* commit '44a38d9337989742046c1e3faa6e7392ecc47cd4':
  Start accepting volume UUIDs from framework.
2015-04-09 21:47:30 +00:00
Jeff Sharkey 44a38d9337 Merge "Start accepting volume UUIDs from framework." 2015-04-09 21:41:15 +00:00
Jeff Sharkey 6fe28a0601 Start accepting volume UUIDs from framework.
We're now parsing and passing through volume UUIDs sent across the
command socket.  The "!" argument value is treated as null, which
means internal storage.

Bug: 19993667
Change-Id: I17729a769ce687a2e94e85991a6338c77ded0b66
2015-04-09 14:15:55 -07:00
Jeff Sharkey fe62ea5d06 am ad6f4996: am 25327881: am 066fadb9: Merge "More volume UUID awareness."
* commit 'ad6f4996dc909dcb8e6e369bf41be514077fb142':
  More volume UUID awareness.
2015-04-09 20:24:05 +00:00
Jeff Sharkey ad6f4996dc am 25327881: am 066fadb9: Merge "More volume UUID awareness."
* commit '25327881e339bd88045e0ecf17185d2edb479d7c':
  More volume UUID awareness.
2015-04-09 20:03:58 +00:00
Jeff Sharkey 25327881e3 am 066fadb9: Merge "More volume UUID awareness."
* commit '066fadb983b117a7682af00780d23d16232ab0e2':
  More volume UUID awareness.
2015-04-09 19:53:33 +00:00
Jeff Sharkey 066fadb983 Merge "More volume UUID awareness." 2015-04-09 19:45:04 +00:00
Jeff Sharkey 41ea424413 More volume UUID awareness.
Teach free_cache() and restorecon_data() about building per-volume
paths.  Also clean up restorecon_data() by using std::string when
building paths.

Clearer names for path building utility methods, and tests to verify.

Bug: 19993667
Change-Id: Iacfbcdaa5b901cc2490bc8eba366dfdeb44f1d93
2015-04-09 11:44:06 -07:00
Andreas Gampe e92939471a am 6930a29a: am cae83eca: am f9ab2ad2: Merge "Installd: Fix Clang build"
* commit '6930a29af13f4a958fa7cba544233d2febe4040b':
  Installd: Fix Clang build
2015-04-09 17:36:05 +00:00
Andreas Gampe 6930a29af1 am cae83eca: am f9ab2ad2: Merge "Installd: Fix Clang build"
* commit 'cae83eca2476c5f730aebaffdfb6443e6780bb2f':
  Installd: Fix Clang build
2015-04-09 17:16:47 +00:00
Tim Kilbourn abc7d3dd72 Merge "Pass through availability of audio mic for input devices." 2015-04-09 17:06:49 +00:00
Andreas Gampe cae83eca24 am f9ab2ad2: Merge "Installd: Fix Clang build"
* commit 'f9ab2ad2d5786b2dd04f08f5d5a67102bd3d796a':
  Installd: Fix Clang build
2015-04-09 17:05:44 +00:00
Tim Kilbourn 063ff53d0b Pass through availability of audio mic for input devices.
Bug: 15374820
Change-Id: Id2ca6da10165e3a887ebfbb18f663a3bf316ac79
2015-04-09 10:02:16 -07:00
Jeff Sharkey 5fd5dd676a am 65fe5dfd: am cbde9b92: am d107c305: Merge "Plumb through volume UUID when building paths."
* commit '65fe5dfdcd08650e0dfbb39f4a716567fb910cab':
  Plumb through volume UUID when building paths.
2015-04-09 17:00:44 +00:00
Andreas Gampe f9ab2ad2d5 Merge "Installd: Fix Clang build" 2015-04-09 16:55:48 +00:00
Andreas Gampe 0ad7a11003 Installd: Fix Clang build
Remove some unused parameters and variables.

Change-Id: I507ae48fe1744b800ceb29192d463fd26c2ccda7
2015-04-09 09:54:35 -07:00
Jeff Sharkey 65fe5dfdcd am cbde9b92: am d107c305: Merge "Plumb through volume UUID when building paths."
* commit 'cbde9b920461225b5400abf5700eec1b62f5ce82':
  Plumb through volume UUID when building paths.
2015-04-09 16:45:31 +00:00
Jeff Sharkey cbde9b9204 am d107c305: Merge "Plumb through volume UUID when building paths."
* commit 'd107c305f74592e8078754b317d840a2dde661db':
  Plumb through volume UUID when building paths.
2015-04-09 16:35:20 +00:00
Jeff Sharkey d107c305f7 Merge "Plumb through volume UUID when building paths." 2015-04-09 16:27:19 +00:00
Richard Uhler 9cebc2bc77 am b8d1ee37: am 19db8c88: am ab91d03b: Merge "installd: Add support for SELF_PATCHOAT_NEEDED."
* commit 'b8d1ee37c4a6897442f5d381d5eb7162e04fcebd':
  installd: Add support for SELF_PATCHOAT_NEEDED.
2015-04-09 14:51:00 +00:00
Richard Uhler b8d1ee37c4 am 19db8c88: am ab91d03b: Merge "installd: Add support for SELF_PATCHOAT_NEEDED."
* commit '19db8c884bb6943113420395b581c72f2f3c6cae':
  installd: Add support for SELF_PATCHOAT_NEEDED.
2015-04-09 14:31:03 +00:00
Richard Uhler 19db8c884b am ab91d03b: Merge "installd: Add support for SELF_PATCHOAT_NEEDED."
* commit 'ab91d03b0dfebf40e98034670892c278ae0a46e5':
  installd: Add support for SELF_PATCHOAT_NEEDED.
2015-04-09 14:20:53 +00:00
Richard Uhler ab91d03b0d Merge "installd: Add support for SELF_PATCHOAT_NEEDED." 2015-04-09 14:13:27 +00:00
Mark Salyzyn 82f393aad6 am d029e95a: am 1b0a8702: am ad436ab5: Merge "dumpstate: scrub APANIC"
* commit 'd029e95a58ea0927ebd3431d9991cd316e568002':
  dumpstate: scrub APANIC
2015-04-08 22:07:20 +00:00
Mark Salyzyn d029e95a58 am 1b0a8702: am ad436ab5: Merge "dumpstate: scrub APANIC"
* commit '1b0a8702322b2b6ed2fa245cf92e87a1e5feea6c':
  dumpstate: scrub APANIC
2015-04-08 21:37:14 +00:00
Mark Salyzyn 1b0a870232 am ad436ab5: Merge "dumpstate: scrub APANIC"
* commit 'ad436ab54a649075b25ab755344fd011bd0c9262':
  dumpstate: scrub APANIC
2015-04-08 18:11:30 +00:00
Mark Salyzyn ad436ab54a Merge "dumpstate: scrub APANIC" 2015-04-08 18:03:35 +00:00
Mark Salyzyn f423b57dd9 dumpstate: scrub APANIC
Bug: 19525200
Change-Id: Ia2d2857cac953fb4ceafb66ddf775d89d7a777b1
2015-04-08 10:51:51 -07:00
Jeff Sharkey c03de09173 Plumb through volume UUID when building paths.
Since app data paths can live on expanded storage devices, accept the
target volume UUID when building paths.  The null UUID indicates the
default internal storage.

To improve readability, start using std::string in several places,
which throws when allocations fail.  For now, perform last-second
sanity checks on incoming path arguments, but we'll eventually want
to check arguments as they come through installd.cpp, instead of
crashing the entire daemon.

Also remove "lib" symlink code from install() and make_user_data(),
since we're no longer supporting /data/app-lib.  The framework
already uses linklib() to create the right symlink for the selected
ISA-specific library dir.

Bug: 19993667
Change-Id: Ib9343575ffb62bf3981e19375de8f3822fc31e28
2015-04-07 20:13:27 -07:00