Commit Graph

461 Commits

Author SHA1 Message Date
Narayan Kamath
9bc8c62ea4 am 357df19b: Merge "Exclude subdirectories when pruning the dex cache."
* commit '357df19b14b8387a480ed68dd6ea92eeb1aa4edc':
  Exclude subdirectories when pruning the dex cache.
2014-06-24 12:13:30 +00:00
Narayan Kamath
357df19b14 Merge "Exclude subdirectories when pruning the dex cache." 2014-06-24 06:22:45 +00:00
Narayan Kamath
1e57e4af8a Exclude subdirectories when pruning the dex cache.
This requires a companion package manager change to prune
each instruction specific dex cache individually.

bug: 15677279

Change-Id: I5891981512bde20e49bff65b1842c28886f2b177
2014-06-20 17:46:58 +01:00
Brian Carlstrom
314f2f7751 am 724473b3: am 71f9956a: Merge "Fix obsolete argument name"
* commit '724473b359d63bf707bd1fe04abdc82edc5fd22d':
  Fix obsolete argument name
2014-06-17 20:05:05 +00:00
Brian Carlstrom
724473b359 am 71f9956a: Merge "Fix obsolete argument name"
* commit '71f9956a23885e64626828a1afa8c512e29be8cc':
  Fix obsolete argument name
2014-06-17 20:00:17 +00:00
Brian Carlstrom
71f9956a23 Merge "Fix obsolete argument name" 2014-06-17 05:00:50 +00:00
Brian Carlstrom
7195fcc218 Fix obsolete argument name
Change-Id: I8030f055ee49dc86d4592f36791edddfc0d60a31
2014-06-16 13:28:03 -07:00
Narayan Kamath
24730ee621 am 395a6a64: am 8c9bcff8: Merge "Add an installd command to prune dex files."
* commit '395a6a642dc3f7c2fe99080bbfcb31a20cb2fba9':
  Add an installd command to prune dex files.
2014-06-16 13:31:37 +00:00
Narayan Kamath
395a6a642d am 8c9bcff8: Merge "Add an installd command to prune dex files."
* commit '8c9bcff892ae30897a971c3b97305e70db5b5bd3':
  Add an installd command to prune dex files.
2014-06-16 13:28:01 +00:00
Nick Kralevich
f40c1fe5ae am 3dd3de03: Merge "installd: change profile files to 0660"
* commit '3dd3de03de17546d785ed2a741fc645c1a0fcad5':
  installd: change profile files to 0660
2014-06-12 23:12:43 +00:00
Wink Saville
e9ecca2758 Merge "Merge kwd to master" 2014-06-12 21:07:47 +00:00
Nick Kralevich
9f12f80d4a am 18c9394c: Merge "Add SELinux checks when adding a service."
* commit '18c9394ce1a4869eb5cf91eece02a4e944e2eebc':
  Add SELinux checks when adding a service.
2014-06-12 21:06:37 +00:00
Riley Spahn
69154df9ef Add SELinux checks when adding a service.
Add a MAC check to the svc_can_register function in
service_manager. The types are defined in
external/sepolicy/service.te and the mapping from service
names is defined in external/sepolicy/service_contexts.
Currently uses the property context backend to parse the
contexts file.

Bug: 12909011
Change-Id: I5d90a614263c60571c7c70c2882e6fa929911ca5
2014-06-12 20:46:24 +00:00
Wink Saville
653e1cf46a Merge kwd to master
Change-Id: Idb607c0aa32f80fe4fe1539aedea7a221e9e7f04
2014-06-11 15:24:52 -07:00
Calin Juravle
14be6fa62e am 17e1d2ca: am 7281ca65: Merge "Pass --top-k-profile-threshold to dex2oat if available."
* commit '17e1d2ca97a711ab539044912bb985a10ccbc9fd':
  Pass --top-k-profile-threshold to dex2oat if available.
2014-06-11 21:37:57 +00:00
Calin Juravle
17e1d2ca97 am 7281ca65: Merge "Pass --top-k-profile-threshold to dex2oat if available."
* commit '7281ca65d00171b846497abca357a005a401e16b':
  Pass --top-k-profile-threshold to dex2oat if available.
2014-06-11 08:53:49 +00:00
Nick Kralevich
0db0f97d87 installd: change profile files to 0660
Profiling information leaks data about how people interact
with apps, so we don't want the data to be available
to other apps. Only the app and system_server need access.

Don't create the /data/dalvik-cache/profiles directory. init.rc
does it for us now.

Change-Id: Ic1b44009faa30d704855e97631006c4b990a4ad3
2014-06-12 14:54:43 -07:00
Narayan Kamath
8c9bcff892 Merge "Add an installd command to prune dex files." 2014-06-10 21:26:11 +00:00
Calin Juravle
7281ca65d0 Merge "Pass --top-k-profile-threshold to dex2oat if available." 2014-06-10 21:26:11 +00:00
Nick Kralevich
a3db3622c5 am f40c1fe5: am 3dd3de03: Merge "installd: change profile files to 0660"
* commit 'f40c1fe5ae6afb9ce1fb179c3b0686d22ca98469':
  installd: change profile files to 0660
2014-06-12 23:17:36 +00:00
Nick Kralevich
f15b30a47c am 9f12f80d: am 18c9394c: Merge "Add SELinux checks when adding a service."
* commit '9f12f80d4af350789a64f5c30531ce790d9b6ea3':
  Add SELinux checks when adding a service.
2014-06-12 21:09:29 +00:00
Robin Lee
7c8bec0179 Rename 'mkuser' command to 'mkuserconfig'
Brings the name more in line with what it actually does.

Change-Id: I0adb14deb1a035abdbe51714356bd0c94ccf04c5
2014-06-10 18:59:55 +01:00
Narayan Kamath
3aee2c5c74 Add an installd command to prune dex files.
This is a straightforward port of logic from
PackageManagerService#pruneDexFiles.

bug: 14407732

Change-Id: I892cff027ddcbb1a4fb37a7af5ecf1697049a188
2014-06-10 15:21:18 +01:00
Calin Juravle
4fdff46166 Pass --top-k-profile-threshold to dex2oat if available.
Also, don't pass --profile-file if the file is empty.
Bug: 12877748

Change-Id: I587d198e64da709930e2cea50a87fed1525281e5
2014-06-10 14:33:15 +01:00
Robin Lee
8400b2c6dd am 04eb4227: am c4193f1f: Merge "Migrate keychain directories to /data/misc/user/0"
* commit '04eb4227b0ee880141d6ffbf170e79b78affea15':
  Migrate keychain directories to /data/misc/user/0
2014-06-09 14:46:58 +00:00
Robin Lee
04eb4227b0 am c4193f1f: Merge "Migrate keychain directories to /data/misc/user/0"
* commit 'c4193f1fef52314b451f55cce48ce44f94b875b6':
  Migrate keychain directories to /data/misc/user/0
2014-06-09 12:51:06 +00:00
Robin Lee
c4193f1fef Merge "Migrate keychain directories to /data/misc/user/0" 2014-06-09 12:44:34 +00:00
Calin Juravle
95081df451 am fb617aa8: am 06642342: Merge "Don\'t always add profile-file option to dex2oat"
* commit 'fb617aa82ad2b6671aa1bc37afa115418cd9091c':
  Don't always add profile-file option to dex2oat
2014-06-09 10:05:06 +00:00
Calin Juravle
fb617aa82a am 06642342: Merge "Don\'t always add profile-file option to dex2oat"
* commit '066423423f04bf1c5972b1d611e01e2e17df3727':
  Don't always add profile-file option to dex2oat
2014-06-09 09:56:31 +00:00
Calin Juravle
57c69c3964 Don't always add profile-file option to dex2oat
Add profile-file option to dex2oat only if the profiler is active and
the file exists.

Bug: 12877748
Bug: 15275634
Change-Id: Icef76514c912c88311ed108f2be7a6329131f741
2014-06-06 15:13:06 +01:00
wsmlby
80b3d8fce2 Merge "Add dual mode to flatland" 2014-06-05 21:16:47 +00:00
wsmlby
57c9a00616 Add dual mode to flatland
Change-Id: I3544e12c9c911cfdd73fa20d038068c9eccb4161
2014-06-05 14:12:41 -07:00
Robin Lee
958ad9181a am 53b49268: am 8adb5a82: Merge "Add installd command to create /data/misc user dir"
* commit '53b4926828fae0e78b467d49a6084b324bcbdcb7':
  Add installd command to create /data/misc user dir
2014-06-05 17:56:59 +00:00
Robin Lee
53b4926828 am 8adb5a82: Merge "Add installd command to create /data/misc user dir"
* commit '8adb5a822d44ed43aa0ec9a8948a7820fdfcd375':
  Add installd command to create /data/misc user dir
2014-06-05 17:53:31 +00:00
Robin Lee
07053fcb61 Migrate keychain directories to /data/misc/user/0
With new CA certificates being stored in /data/misc/user/<userid>/
existing ones need to be moved into the same place.

After this update only the owner user will have custom trusted CAs; all
other users will revert to the default set.

Change-Id: I14a4cd6048685902ad5dd3b53494b03fadc41c04
2014-06-05 17:35:50 +00:00
Robin Lee
095c763dd9 Add installd command to create /data/misc user dir
New command 'mkuser <id>' sets up a user directory in /data/misc/user/,
readable by all apps within that user and writeable by the local system
process.

Change-Id: I5ddde8c4a80f606e723bb41aa64581a0720842d5
2014-06-05 14:34:15 +00:00
Eric Laurent
9882be8960 add sound trigger native service
Change-Id: I5d6fe1ecacca3a941317f841009322bafdf6adcd
2014-06-03 08:20:07 -07:00
Elliott Hughes
3e54077d42 am e77cb931: am 259c2508: am 03e2f8fa: Merge "Modified atrace.cpp to recognize ATRACE_TAG_BIONIC."
* commit 'e77cb9317de54ea0041eeef7966b818257158f64':
  Modified atrace.cpp to recognize ATRACE_TAG_BIONIC.
2014-05-29 01:08:06 +00:00
Elliott Hughes
e77cb9317d am 259c2508: am 03e2f8fa: Merge "Modified atrace.cpp to recognize ATRACE_TAG_BIONIC."
* commit '259c25080d8b7f3b66e27e4d8ac3a268738ebe3f':
  Modified atrace.cpp to recognize ATRACE_TAG_BIONIC.
2014-05-29 01:04:28 +00:00
Elliott Hughes
259c25080d am 03e2f8fa: Merge "Modified atrace.cpp to recognize ATRACE_TAG_BIONIC."
* commit '03e2f8fa13a791d744758ec9ffe27f52cab730d0':
  Modified atrace.cpp to recognize ATRACE_TAG_BIONIC.
2014-05-29 01:02:16 +00:00
Elliott Hughes
03e2f8fa13 Merge "Modified atrace.cpp to recognize ATRACE_TAG_BIONIC." 2014-05-29 00:59:01 +00:00
Brian Carlstrom
28ec03035d am e67810fd: am 97a51ad4: Merge "Move to dalvik.vm.lib.2 to force default to libart"
* commit 'e67810fd7a00ffa92337c6f3aa6114136ce12613':
  Move to dalvik.vm.lib.2 to force default to libart
2014-05-28 23:13:27 +00:00
Brian Carlstrom
e67810fd7a am 97a51ad4: Merge "Move to dalvik.vm.lib.2 to force default to libart"
* commit '97a51ad44ae3dcf4976076382923ddcae16233ee':
  Move to dalvik.vm.lib.2 to force default to libart
2014-05-28 22:31:43 +00:00
Brian Carlstrom
856bc78efc Move to dalvik.vm.lib.2 to force default to libart
Bug: 14298175

(cherry picked from commit c4ac3124ff)

Change-Id: I97cc3ff7a269e671b315afa8673dae43d1f86bf1
2014-05-28 14:48:36 -07:00
Brigid Smith
750aa9743c Modified atrace.cpp to recognize ATRACE_TAG_BIONIC.
Bug: 15116468
Change-Id: I621532fb53b8317f5a513edfbeb0c50c265342fc
2014-05-28 14:42:09 -07:00
Brian Carlstrom
c4ac3124ff Move to dalvik.vm.lib.2 to force default to libart
Bug: 14298175
Change-Id: Id3892a32848fb22fbf4c2861218b51f68e830b34
2014-05-28 14:31:47 -07:00
Santos Cordon
203fe88ed8 DO NOT MERGE Allow "telecomm" service to be registered with the phone UID.
Change-Id: I9180797451dcb2e9029b20bed47f5d5cb8cddb9f
(cherry picked from commit 3fb4de7193)
2014-05-28 04:50:04 +00:00
Nick Kralevich
2f9a3e73bf am 449e0dbe: am fc1b9fa3: am b66ee6c3: Merge "Ensure that app lib symlinks are correctly labeled when created."
* commit '449e0dbe94126553c96cece21da54b40a6880f11':
  Ensure that app lib symlinks are correctly labeled when created.
2014-05-13 20:41:41 +00:00
Nick Kralevich
449e0dbe94 am fc1b9fa3: am b66ee6c3: Merge "Ensure that app lib symlinks are correctly labeled when created."
* commit 'fc1b9fa3178d1452629d75e2afa1a9d72f03fc1c':
  Ensure that app lib symlinks are correctly labeled when created.
2014-05-13 20:38:20 +00:00
Nick Kralevich
fc1b9fa317 am b66ee6c3: Merge "Ensure that app lib symlinks are correctly labeled when created."
* commit 'b66ee6c32d87961d5b9f0be97b5fdccb928fd453':
  Ensure that app lib symlinks are correctly labeled when created.
2014-05-13 20:35:38 +00:00
Stephen Smalley
3a98389263 Ensure that app lib symlinks are correctly labeled when created.
At present, the app lib symlinks are created before setting
the package directory security context, and therefore default
to system_data_file.  Upon a later restorecon_recursive,
they are relabeled to the same type as the package directory,
e.g. app_data_file.  Avoid this inconsistency by setting the
package directory security context before creating the symlink
so that it inherits the same security context.

Change-Id: I1ee6ccd8a2aa63a4d2efda67f313c97932235911
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-05-13 12:59:40 -04:00
Narayan Kamath
fc4e378877 am 44df726a: am cb079c89: Merge "Add instruction-set arguments to installd commands."
* commit '44df726a6cf4fe1119e146c9a18c78966a6305d3':
  Add instruction-set arguments to installd commands.
2014-05-01 14:05:10 +00:00
Narayan Kamath
44df726a6c am cb079c89: Merge "Add instruction-set arguments to installd commands."
* commit 'cb079c899ac9d9c5ec90840249821f58c817406c':
  Add instruction-set arguments to installd commands.
2014-05-01 14:00:54 +00:00
Narayan Kamath
1b40032077 Add instruction-set arguments to installd commands.
The instruction-set is used to construct the dalvik cache
path and is also passed down to dex2oat.

(cherry picked from commit 791781bfb8)

Change-Id: I43396b16f6eaecacf0fb7d052526fc5a239167ac
2014-05-01 11:38:02 +01:00
Nick Vaccaro
bd81c258c2 am 45fcfb48: am 85453ecc: dumpstate: increase poll timeout waiting for SIGQUIT logging
* commit '45fcfb48ef9e65747e7a3f35e1a4da232f6e161a':
  dumpstate: increase poll timeout waiting for SIGQUIT logging
2014-04-30 23:35:03 +00:00
Nick Vaccaro
45fcfb48ef am 85453ecc: dumpstate: increase poll timeout waiting for SIGQUIT logging
* commit '85453ecc90a94564e586f0f97c9ec2c0cf831501':
  dumpstate: increase poll timeout waiting for SIGQUIT logging
2014-04-30 20:35:15 +00:00
Nick Vaccaro
85453ecc90 dumpstate: increase poll timeout waiting for SIGQUIT logging
Increased the maximum time dumpstate will wait for SIGQUIT process
to finish dumping its thread stacks to the logfile to 5 seconds.

Bug: 14057177
Change-Id: I0b43004512855d202f2fe0ea7b0e934e77a3a070
2014-04-30 11:28:31 -07:00
Narayan Kamath
791781bfb8 Add instruction-set arguments to installd commands.
The instruction-set is used to construct the dalvik cache
path and is also passed down to dex2oat.

Change-Id: Ie480841b3e917dabe23ad4d5f4a0b08990500a51
2014-04-30 09:39:37 +01:00
Bill Yi
e4f00b2aae Merge commit '6d05ef2310bdc84811d5b0385b009ad11447a749' into HEAD 2014-04-29 11:34:19 -07:00
Brian Carlstrom
aaa22fd38c am 58ea37fe: am 108ed9fa: Merge "Fix incorrect odex path handling"
* commit '58ea37fe26fc733db478e606374f08d8a9d070cc':
  Fix incorrect odex path handling
2014-04-28 22:10:01 +00:00
Brian Carlstrom
58ea37fe26 am 108ed9fa: Merge "Fix incorrect odex path handling"
* commit '108ed9fa946ec516c0d853927c76ebbfca1dcb23':
  Fix incorrect odex path handling
2014-04-28 22:06:09 +00:00
Chih-Wei Huang
0e8ae16f08 Fix incorrect odex path handling
It's wrong to just concatenate the apk_path and .odex.
The bug prevents the prebuilt odex being used since Kitkat.

The patch is copied from the code of JellyBean.

Change-Id: I0ce8a877e3df8ae1ab9a0e3aeeef2d5253efc223
2014-04-28 14:08:16 -07:00
Mohamad Ayyash
dd306d43ed Merge "atrace: Add f2fs sync and ext4 write tracepoints." 2014-04-15 22:10:10 +00:00
Mohamad Ayyash
26dbcbe013 atrace: Add f2fs sync and ext4 write tracepoints.
Change-Id: I76fa32f7d80aaeafc26494d9018b7a004e7dc3d2
2014-04-11 17:31:31 -07:00
Nick Kralevich
db1d823b4c am 236ed6d3: am 82fb5809: Merge "restorecon the profile directory."
* commit '236ed6d3d376b12573cca6878d3b5013371f5bc8':
  restorecon the profile directory.
2014-04-09 19:49:43 +00:00
Nick Kralevich
236ed6d3d3 am 82fb5809: Merge "restorecon the profile directory."
* commit '82fb58095524c833b0470c4b236aa8a70acf2a0f':
  restorecon the profile directory.
2014-04-09 19:46:14 +00:00
Stephen Smalley
a240733137 restorecon the profile directory.
This is required so that it will be assigned the correct SELinux
security context on first creation by installd.

Bug: 13927667
Change-Id: I4857d031f9e7e60d48b8c72fcb22a81b3a2ebaaa
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-04-09 19:08:20 +00:00
Nick Kralevich
96668903e4 am 4b3d6e31: am 3ebb877e: Merge "Modify installd\'s restorecon function."
* commit '4b3d6e310016140026b0b6c9dca757bf37d6d26a':
  Modify installd's restorecon function.
2014-03-31 20:26:29 +00:00
Nick Kralevich
4b3d6e3100 am 3ebb877e: Merge "Modify installd\'s restorecon function."
* commit '3ebb877e52a2661de56c3f44827f33824e735730':
  Modify installd's restorecon function.
2014-03-31 20:20:44 +00:00
Robert Craig
da30dc7336 Modify installd's restorecon function.
Changes above with PMS and below with libselinux
have resulted in a few changes to the restorecon data
api. This change is needed in order to support the new
way to issue a recursive restorecon of certain
/data/data directories.

The restorecondata function has also been modified to
find all users on the device for a given package name
(argument to the function) and to issue a separate
recursive restorecon call for each.

Change-Id: Ie440cba2c96f0907458086348197e1506d31c1b6
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
2014-03-28 14:32:07 -04:00
Nick Kralevich
9cddbd258d am d9ee7dee: am b1a8c016: Merge "Send libselinux logging to logcat."
* commit 'd9ee7dee2cf42c0e672c7ac85c0252a22d3e5f08':
  Send libselinux logging to logcat.
2014-03-26 16:36:38 +00:00
Nick Kralevich
d9ee7dee2c am b1a8c016: Merge "Send libselinux logging to logcat."
* commit 'b1a8c016371282a3cd3b113e6b2c0310372babf2':
  Send libselinux logging to logcat.
2014-03-26 15:55:46 +00:00
Stephen Smalley
7abb52bcaf Send libselinux logging to logcat.
Otherwise we can't readily see log messages from libselinux calls
made by installd.

Change-Id: I319b30c181470468fe19dd5fbe9251ef03f1163b
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-03-26 09:31:25 -04:00
Xia Wang
d0d4366475 am a0da27d5: am 9c7db080: Build the benchmark test to /data/local/tmp/ for automated test
* commit 'a0da27d546865d075322c410121e9c3101cec449':
  Build the benchmark test to /data/local/tmp/ for automated test
2014-03-25 03:53:59 +00:00
Xia Wang
a0da27d546 am 9c7db080: Build the benchmark test to /data/local/tmp/ for automated test
* commit '9c7db08049e1d36c2f60dd703f27c432bc8cfbc5':
  Build the benchmark test to /data/local/tmp/ for automated test
2014-03-25 03:46:32 +00:00
Xia Wang
6d05ef2310 am 9c7db080: Build the benchmark test to /data/local/tmp/ for automated test
* commit '9c7db08049e1d36c2f60dd703f27c432bc8cfbc5':
  Build the benchmark test to /data/local/tmp/ for automated test
2014-03-24 18:39:57 +00:00
Xia Wang
9c7db08049 Build the benchmark test to /data/local/tmp/ for automated test
Change-Id: I27a5ee24636ff9752a35dbab793821f6b7a79221
(cherry picked from commit b7925f1364)
2014-03-24 18:13:19 +00:00
Nick Kralevich
bb9c93bb6e am 5d58e309: am 1bf30245: Merge "Extend installd to support SELinux restorecon function."
* commit '5d58e3092d70231da57140a7d9d9fbb87fd4b8e6':
  Extend installd to support SELinux restorecon function.
2014-03-19 20:41:51 +00:00
Nick Kralevich
5d58e3092d am 1bf30245: Merge "Extend installd to support SELinux restorecon function."
* commit '1bf30245cbb8be7279fadcf4071cecc8db91789f':
  Extend installd to support SELinux restorecon function.
2014-03-19 20:29:27 +00:00
Robert Craig
e9887e46ce Extend installd to support SELinux restorecon function.
Implement new restorecondata function which will allow
the relabeling of /data/data and /data/user directories.
This is needed in the case of certain OTAs. Not every
boot will apply this relabeling however. Consult change
I77bf2a0c4c34b1feef6fdf4d6c3bd92dbf32f4a1 for
clarification on this issue.

Change-Id: I05e8b438950ddb908e46c9168ea6ee601e6d674f
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
2014-03-19 17:37:48 +00:00
Dan Stoza
2c22093c1c Merge "Remove deprecated BufferQueue constructor" 2014-03-17 18:46:14 +00:00
Mark Salyzyn
993146092f am d4dabf87: am cdbf28b3: Merge "native frameworks: 64-bit compile issues"
* commit 'd4dabf872ac0a12e12aebae9032f7d62762c2aeb':
  native frameworks: 64-bit compile issues
2014-03-13 23:12:09 +00:00
Dan Stoza
6780a2d6a5 Remove deprecated BufferQueue constructor
Bug: 13415624
Change-Id: I1c17833511b5961af5a9bbb9cc3d627ce558d424
2014-03-13 11:31:43 -07:00
Mark Salyzyn
d4dabf872a am cdbf28b3: Merge "native frameworks: 64-bit compile issues"
* commit 'cdbf28b3f7f5327f4cb0eb95b8326bf4c24c87ba':
  native frameworks: 64-bit compile issues
2014-03-13 15:26:10 +00:00
Mark Salyzyn
92dc3fc52c native frameworks: 64-bit compile issues
- Fix format (print/scanf)
- Suppress unused argument warning messages (bonus)

Change-Id: I05c7724d2aba6da1e82a86000e11f3a8fef4e728
2014-03-12 13:12:44 -07:00
Anwar Ghuloum
d105876a6c am 85864b87: am 06ed9491: Merge "Fix parameter ordering for installd\'s dex2oat execl."
* commit '85864b8724b3908d2f5aa861276ce5e80d7f820e':
  Fix parameter ordering for installd's dex2oat execl.
2014-03-12 19:57:05 +00:00
Anwar Ghuloum
85864b8724 am 06ed9491: Merge "Fix parameter ordering for installd\'s dex2oat execl."
* commit '06ed9491418ce84e4272bf4201545fa6cfe3932e':
  Fix parameter ordering for installd's dex2oat execl.
2014-03-11 23:43:19 +00:00
Anwar Ghuloum
4bc054019d Fix parameter ordering for installd's dex2oat execl.
Change-Id: Ibd6fd46c6ec3137874f9a3d5eea134bc804e039a
2014-03-11 15:42:58 -07:00
Andy McFadden
e98151e004 Remove "screenshot"
This is the old screenshot utility, which relies on direct access
to the framebuffer device.  It was replaced a long time ago by
"screencap", which talks to SurfaceFlinger (and includes a fallback
that tries to use the FB dev).

Change-Id: Id75a574bc78033761070b64d528fed06e23a0189
2014-03-11 11:21:21 -07:00
Dave Allison
544b09523b am 13c6fb10: am 1649c77e: Merge "ART profiler"
* commit '13c6fb1026531635f409f111d78d561592d2ede9':
  ART profiler
2014-03-08 07:28:20 +00:00
Dave Allison
13c6fb1026 am 1649c77e: Merge "ART profiler"
* commit '1649c77ed29eada5de32ace97033b9d898e9a6eb':
  ART profiler
2014-03-08 01:56:32 +00:00
Dave Allison
d93707342a ART profiler
Add args to the installd commands for profiler usage.
Make installd create the profile files and allow apps
to write to them.

The profile files are in /data/dalvik-cache/profiles.  This
central location is needed due to permissions issues with
dex2oat reading from an app's data directory.  The solution
is to put the profile file in a directory owned by the
install user and make the file writeable by the shared group
id of for the app.  The app can read and write to these files
only in the profiles directory.  The 'system' user also needs
to be able to read the files in order to determine the amount
of change to the file over time.

Bug: 12877748
Change-Id: I9b8e59e3bd7df8a1bf60fa7ffd376a24ba0eb42f

Conflicts:
	cmds/installd/commands.c
2014-03-07 12:35:52 -08:00
Mathieu Chartier
62d0f901fd Don't pass in empty arg to dex2oat.
We would occassionally pass in an empty arg "" instead of a NULL.
This caused problems since dex2oat isn't made to handle empty args.

(cherry picked from commit f53dbfeda3)

Change-Id: Ia2d60b895391bf83b5d250c20ddb8a4917d347a6
2014-03-05 17:56:31 -08:00
Mathieu Chartier
1d84e25648 am 3c39e03c: Merge "Don\'t pass in empty arg to dex2oat."
* commit '3c39e03c08094ce65608cae8a45dd726cf10b5c3':
  Don't pass in empty arg to dex2oat.
2014-03-06 01:05:22 +00:00
Mathieu Chartier
f53dbfeda3 Don't pass in empty arg to dex2oat.
We would occassionally pass in an empty arg "" instead of a NULL.
This caused problems since dex2oat isn't made to handle empty args.

Change-Id: Ibb1aed64a4aa17459b2a75a5a2abcf13c7fa8ac7
2014-03-05 16:58:48 -08:00
Brian Carlstrom
cd44310a13 am c9e60374: am e19c99aa: Merge "Add dalvik.vm.dex2oat-flags to mimic dalvik.vm.dexopt-flags"
* commit 'c9e60374f5144e94103e5b866570be114aa165c8':
  Add dalvik.vm.dex2oat-flags to mimic dalvik.vm.dexopt-flags
2014-03-05 22:33:26 +00:00
Brian Carlstrom
c9e60374f5 am e19c99aa: Merge "Add dalvik.vm.dex2oat-flags to mimic dalvik.vm.dexopt-flags"
* commit 'e19c99aad605c395f53bf39ae1a27e298e7e33ce':
  Add dalvik.vm.dex2oat-flags to mimic dalvik.vm.dexopt-flags
2014-03-05 20:09:46 +00:00
Brian Carlstrom
0ae8e39ebc Add dalvik.vm.dex2oat-flags to mimic dalvik.vm.dexopt-flags
Change-Id: Ic048ed654ea0ae38c9684e5fa5b14742b6b83305
2014-03-04 14:11:55 -08:00
Narayan Kamath
87eb08dc07 am ad0f05be: am b98c4761: Merge "Correcting include path in installd test project\'s Android.mk"
* commit 'ad0f05bed95dc816a5b1e4bea23b0736458c1857':
  Correcting include path in installd test project's Android.mk
2014-02-28 16:23:59 +00:00
Narayan Kamath
ad0f05bed9 am b98c4761: Merge "Correcting include path in installd test project\'s Android.mk"
* commit 'b98c4761e0c80a8d8138910e0a5e5fc8baff8282':
  Correcting include path in installd test project's Android.mk
2014-02-28 16:19:30 +00:00
Ramin Zaghi
7400742285 Correcting include path in installd test project's Android.mk
installd project has moved from frameworks/base to frameworks/native
 and so its test project's c_include path defined in Android.mk
 has to match the change.

Change-Id: I597125ff659f51edbd9fc95371790e2d567c78be
2014-02-28 15:41:57 +00:00
Xia Wang
b7925f1364 Build the benchmark test to /data/local/tmp/ for automated test
Change-Id: I27a5ee24636ff9752a35dbab793821f6b7a79221
2014-02-26 18:04:50 -08:00
Dianne Hackborn
20c7adbfaa am b37b312b: am 7d86b454: Merge "frameworks/native: move idmap to frameworks/base"
* commit 'b37b312b829c7ab5107c2f96d0a95a557f67a831':
  frameworks/native: move idmap to frameworks/base
2014-02-14 02:00:17 +00:00
Dianne Hackborn
b37b312b82 am 7d86b454: Merge "frameworks/native: move idmap to frameworks/base"
* commit '7d86b45472898373bbe3ef03286b66d71ea82b79':
  frameworks/native: move idmap to frameworks/base
2014-02-14 01:54:37 +00:00
Dianne Hackborn
7d86b45472 Merge "frameworks/native: move idmap to frameworks/base" 2014-02-14 01:45:28 +00:00
Nick Kralevich
165c8bdfb5 am 0e4d2885: am 2044ac43: Merge "Convert all selinux_android_restorecon and _setfilecon calls to new API."
* commit '0e4d2885a34d31f5dbe5a08bdb654953abaf82a2':
  Convert all selinux_android_restorecon and _setfilecon calls to new API.
2014-02-13 00:16:04 +00:00
Nick Kralevich
0e4d2885a3 am 2044ac43: Merge "Convert all selinux_android_restorecon and _setfilecon calls to new API."
* commit '2044ac43e53b517526b3c70dc4fbc60ffc01693f':
  Convert all selinux_android_restorecon and _setfilecon calls to new API.
2014-02-12 23:15:07 +00:00
Nick Kralevich
2044ac43e5 Merge "Convert all selinux_android_restorecon and _setfilecon calls to new API." 2014-02-12 23:09:45 +00:00
Colin Cross
07a4728150 frameworks/native: move idmap to frameworks/base
idmap depends on libandroidfw, so it should go in frameworks/base.

Change-Id: Ieee30ba9d8170d3118acc89f0617981228a6974b
2014-02-11 18:04:03 -08:00
Dianne Hackborn
297097957f am 6e5fdb15: am 6c14f0ad: Merge "Runtime resource overlay, iteration 2"
* commit '6e5fdb1551ca7d117bf7e1acca133a077a8701f0':
  Runtime resource overlay, iteration 2
2014-02-11 21:49:02 +00:00
Dianne Hackborn
6e5fdb1551 am 6c14f0ad: Merge "Runtime resource overlay, iteration 2"
* commit '6c14f0ad82be418c742e56fe586657ea0f394b05':
  Runtime resource overlay, iteration 2
2014-02-11 21:41:23 +00:00
Dianne Hackborn
6c14f0ad82 Merge "Runtime resource overlay, iteration 2" 2014-02-11 21:27:36 +00:00
Dianne Hackborn
667c3a19d8 am 99188064: am 340aa8cb: Merge "New command line tool \'idmap\'"
* commit '99188064fd3b2d4ca85b02afefa4adb2562f8940':
  New command line tool 'idmap'
2014-02-11 20:41:09 +00:00
Dianne Hackborn
99188064fd am 340aa8cb: Merge "New command line tool \'idmap\'"
* commit '340aa8cbd4afbb68b16f369336cc1c202582f021':
  New command line tool 'idmap'
2014-02-11 20:35:42 +00:00
Dianne Hackborn
340aa8cbd4 Merge "New command line tool 'idmap'" 2014-02-11 20:29:56 +00:00
Stephen Smalley
26288202e7 Convert all selinux_android_restorecon and _setfilecon calls to new API.
libselinux selinux_android_restorecon API is changing to the more
general interface with flags and dropping the older variants.

Also get rid of the old, no longer used selinux_android_setfilecon API
and rename selinux_android_setfilecon2 to it as it is the only API in use.

Change-Id: I1e71ec398ccdc24cac4ec76f1b858d0f680f4925
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-02-07 09:36:11 -05:00
Arve Hjønnevåg
ba91e5af45 am 8641112a: am 4e7fd950: Merge "Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set."
* commit '8641112a1c3d4ff3ed68131d07eed01b715ac906':
  Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set.
2014-02-04 02:10:18 +00:00
Arve Hjønnevåg
8641112a1c am 4e7fd950: Merge "Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set."
* commit '4e7fd9506103dcc9750788caf1f94b8d1348f37b':
  Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set.
2014-02-04 02:01:45 +00:00
Arve Hjønnevåg
f3ad11cf3c Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set.
Change-Id: I46a29939fa29ec9421ab6dff3285502f69a31745
2014-02-03 14:48:36 -08:00
Arve Hjønnevåg
88f6ad18de am c93865de: am 58242fc2: Merge changes Ib0e5a037,I1bd7c38e,Icfc67c2a,I96c64312,I59528054, ...
* commit 'c93865de80a16d3638936890fb42eb175284044b':
  ServiceManager: Implement PING_TRANSACTION
  ServiceManager: Use 32/64 bit types from new binder header
  Binder: Use 64 bit pointers in 32 processes if selected by the target
  Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true
  Binder: Make binder portable
  ServiceManager: Fix the binder interface
  ServiceManager: Store handles in uint32_t instead of void *
  ServiceManager: Generic Fixes
  ServiceManager: Add extra error handling
  ServiceManager: Fix Android.mk
  ServiceManager: Make use of kernel exported structures
2014-02-03 22:11:16 +00:00
Arve Hjønnevåg
c93865de80 am 58242fc2: Merge changes Ib0e5a037,I1bd7c38e,Icfc67c2a,I96c64312,I59528054, ...
* commit '58242fc29881cf29d56ee6e5fde6d73b16d0b67c':
  ServiceManager: Implement PING_TRANSACTION
  ServiceManager: Use 32/64 bit types from new binder header
  Binder: Use 64 bit pointers in 32 processes if selected by the target
  Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true
  Binder: Make binder portable
  ServiceManager: Fix the binder interface
  ServiceManager: Store handles in uint32_t instead of void *
  ServiceManager: Generic Fixes
  ServiceManager: Add extra error handling
  ServiceManager: Fix Android.mk
  ServiceManager: Make use of kernel exported structures
2014-02-03 21:18:35 +00:00
MÃ¥rten Kongstad
63568b1430 Runtime resource overlay, iteration 2
Support any number of overlay packages. Support any target package.

UPDATED PACKAGE MATCHING
------------------------
In Runtime resource overlay, iteration 1, only a single overlay package
was considered. Package matching was based on file paths:
/vendor/overlay/system/framework-res.apk corresponded to
/system/framework-res.apk. Introduce a more flexible matching scheme
where any package is an overlay package if its manifest includes

    <overlay targetPackage="com.target.package"/>

For security reasons, an overlay package must fulfill certain criteria
to take effect: see below.

THE IDMAP TOOL AND IDMAP FILES
------------------------------
Idmap files are created by the 'idmap' binary; idmap files must be
present when loading packages. For the Android system, Zygote calls
'idmap' as part of the resource pre-loading. For application packages,
'idmap' is invoked via 'installd' during package installation (similar
to 'dexopt').

UPDATED FLOW
------------
The following is an outline of the start-up sequences for the Android
system and Android apps. Steps marked with '+' are introduced by this
commit.

Zygote initialization
   Initial AssetManager object created
+    idmap --scan creates idmaps for overlays targeting 'android', \
           stores list of overlays in /data/resource-cache/overlays.list
   AssetManager caches framework-res.apk
+  AssetManager caches overlay packages listed in overlays.list

Android boot
   New AssetManager's ResTable acquired
     AssetManager re-uses cached framework-res.apk
+    AssetManager re-uses cached 'android' overlays (if any)

App boot
   ActivityThread prepares AssetManager to load app.apk
+  ActivityThread prepares AssetManager to load app overlays (if any)
   New AssetManager's ResTable acquired as per Android boot

SECURITY
--------
Overlay packages are required to be pre-loaded (in /vendor/overlay).
These packages are trusted by definition. A future iteration of runtime
resource overlay may add support for downloaded overlays, which would
likely require target and overlay signatures match for the overlay to
be trusted.

LOOKUP PRIORITY
---------------
During resource lookup, packages are sequentially queried to provide a
best match, given the constraints of the current configuration. If any
package provide a better match than what has been found so far, it
replaces the previous match. The target package is always queried last.

When loading a package with more than one overlay, the order in which
the overlays are added become significant if several packages overlay
the same resource.

Had downloaded overlays been supported, the install time could have been
used to determine the load order. Regardless, for pre-installed
overlays, the install time is randomly determined by the order in which
the Package Manager locates the packages during initial boot. To support
a well-defined order, pre-installed overlay packages are expected to
define an additional 'priority' attribute in their <overlay> tags:

    <overlay targetPackage="com.target.package" priority="1234"/>

Pre-installed overlays are loaded in order of their priority attributes,
sorted in ascending order.

Assigning the same priority to several overlays targeting the same base
package leads to undefined behaviour. It is the responsibility of the
vendor to avoid this.

The following example shows the ResTable and PackageGroups after loading
an application and two overlays. The resource lookup framework will
query the packages in the order C, B, A.

        +------+------+-     -+------+------+
        | 0x01 |      |  ...  |      | 0x7f |
        +------+------+-     -+------+------+
            |                           |
        "android"                Target package A
                                        |
                       Pre-installed overlay B (priority 1)
                                        |
                       Pre-installed overlay C (priority 2)

Change-Id: If49c963149369b1957f7d2303b3dd27f669ed24e
2014-02-03 16:16:40 +01:00
MÃ¥rten Kongstad
5ee3dafa98 New command line tool 'idmap'
Introduce a new tool 'idmap' to handle generation and verification of
idmap files. The tool is modelled on 'dexopt', and is intended to be
used similarly, notably by 'installd'.
See cmds/idmap/idmap.cpp for further documentation on 'idmap'.

Note: this commit is interdependent on a commit in project build/ to add
'idmap' to PRODUCT_PACKAGES.

Note: the changes to androidfw are only stubs. The actual implementation
will be provided in Runtime resource overlay, iteration 2.

Change-Id: I7131b74ece1e46c8a9c0a31d103e686aa07da2bb
2014-02-03 16:16:39 +01:00
Arve Hjønnevåg
e5245cbf5d ServiceManager: Implement PING_TRANSACTION
Stop printing "invalid id " to stderr every time a process tries to
connect to the servicemanager.

Change-Id: Ib0e5a0375bfa2dec2c2f9cd668bd5dda46ed6588
2014-01-31 17:22:30 -08:00
Arve Hjønnevåg
399b6c3bbc ServiceManager: Use 32/64 bit types from new binder header
Change-Id: I1bd7c38ed9f43125cf9c63aa533434ee7ca06f80
2014-01-31 17:22:30 -08:00
Arve Hjønnevåg
e91fff0a2d Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true
Change-Id: I96c643123b0314c361b7f48a18d5c22c660d4ff5
2014-01-31 15:50:59 -08:00
Brian Carlstrom
e0dd0b8514 am af3efe8c: Merge "frameworks/native: Rename persist.sys.dalvik.vm.lib to allow new default"
* commit 'af3efe8ce7e2eeb7a98552af5cf38d8a9720f018':
  frameworks/native: Rename persist.sys.dalvik.vm.lib to allow new default
2014-01-31 12:34:20 +00:00
Serban Constantinescu
3a345f0df5 ServiceManager: Fix the binder interface
This patch adds support for binder transactions on 64bit systems
without breaking the existing 32bit ABI. It has been tested on
the Android emulator and ARMv8 Model.

Most of the changes in this patch just follow the binder ABI.

Change-Id: I8c37b847ea65008d56554d34d4696fe3d22f7533
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:34 +00:00
Serban Constantinescu
5fb1b8836a ServiceManager: Store handles in uint32_t instead of void *
This patch corrects the types used for storing handles.

Change-Id: If9c10782345f1de9e12b4b3fd6be9e02e6b568cd
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:30 +00:00
Serban Constantinescu
9b738bb411 ServiceManager: Generic Fixes
This patch fixes some of the ServiceManager issues. The following patches
of the series add fixes to the ABI.

Change-Id: Ib479234c8704e12592f1b149ddec67881bc50230
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:25 +00:00
Serban Constantinescu
a44542ca74 ServiceManager: Add extra error handling
This patch extends the error handling. It also adds a check for a matching
binder version - kernel/userspace.

Change-Id: I43a262934b38c5711536aaa42754fed1ef04b39e
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:20 +00:00
Serban Constantinescu
dc832dc551 ServiceManager: Fix Android.mk
This patch fixes Android.mk and enables building bctest as an optional
module without any extra hacks.

Change-Id: Icaf8bf9452776db2ea4a2ba75f3abf05b4e2cdab
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:16 +00:00
Serban Constantinescu
bcf38880c6 ServiceManager: Make use of kernel exported structures
This patch switches ServiceManager to use the structures exported in the
kernel headers rather then redefining its own.

struct binder_txn is replaced with struct binder_transaction_data and struct
binder_object with struct flat_binder_object, both defined in the binder driver
header <linux/binder.h>.

Change-Id: I3b3e97918173ea35a289e184774ae06193192da3
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:20:49 +00:00
Brian Carlstrom
87a12bf53b frameworks/native: Rename persist.sys.dalvik.vm.lib to allow new default
Bug: 12798969

(cherry picked from commit 0c05d3aca6)

Change-Id: I3db785c3f8a3d242d7a0127ed5bec9ecca67f52c
2014-01-30 16:27:52 -08:00
Brian Carlstrom
0c05d3aca6 frameworks/native: Rename persist.sys.dalvik.vm.lib to allow new default
Bug: 12798969
Change-Id: I6b40317eceb3d89b0acff88238a9a9ab423c4d78
2014-01-30 13:16:53 -08:00
John Spurlock
5ecd4beef8 Dump system settings for all users
Change-Id: Ic832b19fe698da1984876b2949c3f26990ae5076
2014-01-29 14:34:24 -05:00
Guang Zhu
9fcca4ee17 releax wait timeout on start of dumpstate service
Bug: 12181612
Change-Id: If7ae97de1e42890dac37d036ead669ccda65e688
2014-01-15 15:58:54 -08:00
Nick Kralevich
b281d81404 am e2d412f0: am e7394ba8: am c02c35fb: Merge "restorecon /data/media when re-creating it for multi-user upgrade."
* commit 'e2d412f0466ac6a1a33e2c2563ed2192b58bfa87':
  restorecon /data/media when re-creating it for multi-user upgrade.
2013-12-17 23:18:58 +00:00
Nick Kralevich
e2d412f046 am e7394ba8: am c02c35fb: Merge "restorecon /data/media when re-creating it for multi-user upgrade."
* commit 'e7394ba8bd9cd90a0fb72f6c50522a41cd7877fd':
  restorecon /data/media when re-creating it for multi-user upgrade.
2013-12-17 23:12:20 +00:00
Stephen Smalley
47a351834f restorecon /data/media when re-creating it for multi-user upgrade.
Change-Id: I112c61863f2104d1962697c54cff25106e9b48a0
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-12-17 16:04:20 -05:00
Todd Poynor
34ced636fb am 2a83daa8: dumpstate: dump console-ramoops instead of last_kmsg if present
* commit '2a83daa8a3e1eab292dc1464bbe78f025f4bc0e9':
  dumpstate: dump console-ramoops instead of last_kmsg if present
2013-12-11 06:30:39 +00:00
Todd Poynor
2a83daa8a3 dumpstate: dump console-ramoops instead of last_kmsg if present
Change-Id: I41a922b33f0b6b4e8e150a92e46032501a165e33
2013-12-10 14:42:27 -08:00
Nick Kralevich
17dc96ecde am 651dc744: am bef08b8d: Merge "Handle policy reloads within installd rather than restarting it."
* commit '651dc7440b10c8a4090bd5469a2e90d3bfe8356e':
  Handle policy reloads within installd rather than restarting it.
2013-12-02 23:31:01 +00:00
Nick Kralevich
bef08b8d1b Merge "Handle policy reloads within installd rather than restarting it." 2013-11-27 21:09:13 +00:00
Nick Kralevich
b5e4762129 am e4e91c4e: resolved conflicts for merge of e678897f to klp-dev-plus-aosp
* commit 'e4e91c4ead821afb5aced2e33ee39d8878eb4d1e':
  Proper security labeling of multi-user data directories.
2013-09-20 12:53:20 -07:00
Nick Kralevich
e4e91c4ead resolved conflicts for merge of e678897f to klp-dev-plus-aosp
Change-Id: Ie2a5e7a917ab7f5a0ee98300b880d22c7a10bf70
2013-09-20 12:45:20 -07:00
Mike Lockwood
30a7d5a5a9 Add support for "input" service running as user AID_INPUT
Change-Id: I8b6700c25ea2264fb3e1c16e18df281eb67b931f
2013-09-18 14:44:30 -07:00
Robert Craig
880d1a957e Proper security labeling of multi-user data directories.
Add seinfo paramater to appropriate make directory
functions. This allows proper labeling for multi-user
scenarios.

Change-Id: Iaba7c40645bc7b6cc823d613da0c3782acf6ddd5
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
2013-09-18 13:21:12 +00:00
Mike Lockwood
2a5fd8b064 servicemanager: Add support for "audio" service running as AID_AUDIO user
Change-Id: Ia41f1edd05f233ac5ce43c34eb8ab3ab76ffa194
2013-09-11 08:10:11 -07:00
Dianne Hackborn
3b010de1c1 am ecc05fb5: am 59b1516f: Fix issue #10422349: Limit/change the battery history data in batterystats
* commit 'ecc05fb5430ebb57710850f22d2a370c2af86e9d':
  Fix issue #10422349: Limit/change the battery history data in batterystats
2013-09-04 18:32:12 -07:00