16947 Commits

Author SHA1 Message Date
Dianne Hackborn
5d84bce122 Fix issue #14492403: Oom scores appear to be incorrect...
...and causing runtime restarts

Got a little too aggressive with the delete key.  *blush*

Change-Id: Icd4637827424211abc2347f7f9407c2d4c95cfad
2014-05-02 13:21:16 -07:00
Dianne Hackborn
5b8b920022 Merge "Make GET_TASKS signature|system." 2014-05-02 20:18:10 +00:00
RoboErik
4f854e0d0b Merge "Add playback state and metadata to dump" 2014-05-02 20:07:07 +00:00
Dianne Hackborn
0923328962 Make GET_TASKS signature|system.
Normal apps can't hold it now.  If they try to use
getRecentTasks() or getRunningTasks() without the permission,
they will only see their own tasks and home in the list.

Also took this opportunity to eradicate all of the old pending
thumbnail stuff.

Change-Id: I6dc52a06221c78097162e4a8b482027b798bf3ee
2014-05-02 11:51:26 -07:00
Jeff Davidson
4cd4110f20 Merge "API for network cache subsystems." 2014-05-02 15:33:36 +00:00
Jungshik Jang
97babdc92b Fix unmatched jni method name.
It breaks systemserver

Change-Id: Iecc5600d64a273c4bbf51bd8fd779a79a3dab107
2014-05-02 13:21:15 +09:00
Jungshik Jang
3f74ab0ee0 Implement logical address allocation logic for HDMI CEC.
Logical address in CEC is to distinguish each logical device from others.
In order to allocate logical address for new device, CEC sends
<Polling Message> to CEC bus. <Polling Message> is a CEC message
which has the same address for both source and destination without
body frame. (10bits).
CEC allows one and more logical address for a device type.
For example, there are 3 logical address defined for recorder device(1, 2, 9).
Among logical address candidates for the given device type, CEC scans
first the previous logical address (preferred logical address) of device.
If a device has not been allocated any logical address, preferred address
will be 15 (Unregistered), which means scan address from the minimum address
number of type. For example for recorder device, it starts from 1.
If no devices acks to the <Polling Message> during scan, it will be the
logical address of the device.
Since logical address is determined by a series of sending <Polling Message>
it happens in IO thread with separate allocate logical address message
instead of individual sendCommand message.

Along with this, updated ADDR_FREE_USE(14) to ADDR_SPECIFIC_USE(14)
which is revised name on HDMI 1.4.

Change-Id: Ic96dcdbe4aaa3789cfed0352a88ca75369335a98
2014-05-02 10:50:08 +09:00
Jeff Brown
8822d4befd Merge "resolved conflicts for merge of 4f8cd188 to master" 2014-05-02 01:21:57 +00:00
Jeff Brown
fb0448ab4b resolved conflicts for merge of 4f8cd188 to master
Change-Id: I148cd616cd14d834915978aa2dc3f9e27188dbd3
2014-05-01 18:19:31 -07:00
Jungshik Jang
7d9a843af8 Implement add/remove device info api for Hdmi Cec device.
In order to manage info of all cec devices connected hdmi bus,
HdmiCecController should have data structure for them.
This change includes two major pieces.

1. HdmiCecDeviceInfo
 It's data structure containing basic device information such as
 logical address, physicall address, device type and vendor id.
 It will not be available to thirdparty but some system component
 like TIF needs this to update device information connected to
 its hdmi ports.

2. Managing device list in HdmiCecController.
 HdmiCecController is a host to manage all CEC device.
 and we need to have logic add or remove as well as get it.
 All cec devices are managed as sparsearray which uses logical address as key.

This change introduces internal api and the later change will have logic
to call these apis.

Change-Id: Idc2f189ac0bffe904e011ced0ac991f16da07db1
2014-05-02 10:15:38 +09:00
Jungshik Jang
615d1337fc Merge "Implement native send and receive logic for HdmiCecController." 2014-05-02 00:32:44 +00:00
Jeff Brown
4f8cd18880 am 7f6ab17d: Merge "Clean up some terminology related to interactive state." into klp-modular-dev
* commit '7f6ab17d414726868563105cd995b37dd519320b':
  Clean up some terminology related to interactive state.
2014-05-01 23:29:13 +00:00
RoboErik
66dea73906 Add playback state and metadata to dump
Change-Id: I813ff23c496f75776c8bd63f78bbe87683b19bc0
2014-05-01 16:16:00 -07:00
Jeff Brown
140ffc783c Clean up some terminology related to interactive state.
Change-Id: Ife4445685a5314dea64332a3490fa8dd3ffd89a2
2014-05-01 15:22:27 -07:00
Brian Carlstrom
edfb6b6b74 am 2de2e225: am e3cceef7: am 0f7c0570: Merge "Minor cleanup of UsageStatsService"
* commit '2de2e22540441fd02e03abae5bcae8feb873b929':
  Minor cleanup of UsageStatsService
2014-05-01 21:49:03 +00:00
Brian Carlstrom
2de2e22540 am e3cceef7: am 0f7c0570: Merge "Minor cleanup of UsageStatsService"
* commit 'e3cceef7ececdac1c6df65d3f7a1557ac3ce5e3c':
  Minor cleanup of UsageStatsService
2014-05-01 21:45:38 +00:00
Amith Yamasani
334f959bf5 Merge "Deliver package broadcasts only to related profiles." 2014-05-01 21:44:08 +00:00
Brian Carlstrom
e3cceef7ec am 0f7c0570: Merge "Minor cleanup of UsageStatsService"
* commit '0f7c0570e091a284481c2406d8275d87c3786c1d':
  Minor cleanup of UsageStatsService
2014-05-01 21:41:58 +00:00
Amith Yamasani
932249db93 Deliver package broadcasts only to related profiles.
Store the listener's userhandle in a cookie and compare profile
relationships before delivering package broadcasts to a listener.

Basically, don't leave TODOs around, they'll result in bugs :)

Bug: 14436558
Change-Id: I57a21719caab6cf54b78de7be2eca3e398dc6288
2014-05-01 14:39:35 -07:00
Brian Carlstrom
393fbe71f8 Minor cleanup of UsageStatsService
Change-Id: Idea0e29f347d14e48e87aad38a261d0493bd5fd3
2014-05-01 14:12:14 -07:00
John Spurlock
3a8557dc22 Merge "Implement long-term condition subscriptions." 2014-05-01 19:17:53 +00:00
John Spurlock
3b98b3f1f8 Implement long-term condition subscriptions.
Bind long-term conditions (like "in a meeting") to enter/exit
zen mode automatically.

Persist automatic condition subscriptions to maintain them across
reboots.

Normalize condition state binding: true => enter zen, false => exit.

Change-Id: Icba2b8b25c0a352ae8215f4c0a324e4f966c0165
2014-05-01 15:03:17 -04:00
RoboErik
6e6a6e863d Merge "Add Session API calls to RCC and AudioManager" 2014-05-01 17:14:56 +00:00
RoboErik
f1372428f2 Add Session API calls to RCC and AudioManager
This makes RCC and MediaButtonReceiver (via AudioManager) also use the new Session APIs in parallel to their existing code. This will allow us to bring up the Session compatibility pieces without disrupting the old behavior and then switch everything over to just using the new APIs when ready.

Change-Id: I33ce0a044dea3ec763f2302b91a5e415be27d4a4
2014-05-01 17:14:01 +00:00
RoboErik
67e2196d07 Merge "Add dump to MediaSessionService" 2014-05-01 17:11:34 +00:00
Narayan Kamath
531381056f am 5dca099d: am 1cec7f85: Merge "Don\'t adjust ABI if PackageSetting#pkg is null."
* commit '5dca099df7100c531e111b50435605c318f1e6d4':
  Don't adjust ABI if PackageSetting#pkg is null.
2014-05-01 14:39:20 +00:00
Narayan Kamath
d6809b35af am c1f81f90: am 27f2bfc4: Merge "Fix dex file pruning logic."
* commit 'c1f81f9086037dde6e082b8a80c84277cb727726':
  Fix dex file pruning logic.
2014-05-01 14:39:16 +00:00
Narayan Kamath
fbd80b58db am 51f4367c: am bcc3b312: Merge "Adjust instruction sets for shared UID apps."
* commit '51f4367cac606580a5ca10ec1cf2dcab3982aebc':
  Adjust instruction sets for shared UID apps.
2014-05-01 14:39:12 +00:00
Narayan Kamath
3a951e52d9 resolved conflicts for merge of 69da8a12 to klp-modular-dev-plus-aosp
Change-Id: Ie07b88f324749afcf8417b50d4dbbc6e2a271a2a
2014-05-01 15:32:20 +01:00
Narayan Kamath
d2ec8724d2 am d85ded89: am 645a920f: Merge "Fix OEM native library path bug."
* commit 'd85ded890d86d454a0571c63911ff911633e3a95':
  Fix OEM native library path bug.
2014-05-01 14:01:14 +00:00
Narayan Kamath
f5c6a1b3eb am eb573498: am 986b901a: Merge "Fix native-lib dir assignment & updating"
* commit 'eb5734989b3ef5455359f8807684a860ad04c134':
  Fix native-lib dir assignment & updating
2014-05-01 14:01:10 +00:00
Narayan Kamath
5dca099df7 am 1cec7f85: Merge "Don\'t adjust ABI if PackageSetting#pkg is null."
* commit '1cec7f8539e6465ff80577169d7d07df3c2574b7':
  Don't adjust ABI if PackageSetting#pkg is null.
2014-05-01 14:00:52 +00:00
Narayan Kamath
c1f81f9086 am 27f2bfc4: Merge "Fix dex file pruning logic."
* commit '27f2bfc406157039c5241f6a4f38f597b2076e2a':
  Fix dex file pruning logic.
2014-05-01 14:00:49 +00:00
Narayan Kamath
51f4367cac am bcc3b312: Merge "Adjust instruction sets for shared UID apps."
* commit 'bcc3b312b0662ae2f8b8444eaedd5f35fc75c411':
  Adjust instruction sets for shared UID apps.
2014-05-01 14:00:46 +00:00
Narayan Kamath
69da8a124e am 2a9a0471: Merge "Package manager changes for dual zygote stack."
* commit '2a9a047140b8da8f9cd7147c8bed60eeb61d1b6a':
  Package manager changes for dual zygote stack.
2014-05-01 14:00:43 +00:00
Narayan Kamath
0338af46f9 am 99253c2d: am fde59428: Merge "Handle /oem and /vendor as well"
* commit '99253c2da945cbd4725efced6cac2dc40c858d6c':
  Handle /oem and /vendor as well
2014-05-01 13:57:21 +00:00
Narayan Kamath
5bc12a1b5d am a7b465ef: am d91358b2: Merge "Support per-package lib dirs for bundled apps"
* commit 'a7b465efc4eede46b8dfc8932c6c30346e8e79de':
  Support per-package lib dirs for bundled apps
2014-05-01 13:57:17 +00:00
Narayan Kamath
d85ded890d am 645a920f: Merge "Fix OEM native library path bug."
* commit '645a920fd2c478c545c6bb659f2eab36545fe116':
  Fix OEM native library path bug.
2014-05-01 13:56:59 +00:00
Narayan Kamath
eb5734989b am 986b901a: Merge "Fix native-lib dir assignment & updating"
* commit '986b901ae280928e91193527f7c883b296fc62fc':
  Fix native-lib dir assignment & updating
2014-05-01 13:56:56 +00:00
Narayan Kamath
f465db9f1d Don't adjust ABI if PackageSetting#pkg is null.
If means the package hasn't been scanned yet, and we
will adjust the ABI during the scan of the last package
in the shared user group.

NOTE: This needs some more cleaning up, which will be
done along with the remaining TODO in this function.

(cherry picked from commit 6609990e35b11c38f55f6e632160d4f2ff201ea3)

Change-Id: Ibace7849485865054e062d2b979f320bf89ff0f3
2014-05-01 13:56:43 +00:00
Narayan Kamath
57156572a7 Fix dex file pruning logic.
We should now prune all normal files from /data/dalvik-cache
in addition to looking for dex files in all subdirectories of
/data/dalvik-cache.

(cherry picked from commit 51a6f9253399588eedf77d75c578d9aa23d11529)

Change-Id: I536dfdc48e94155e7be64eb4efd9f7f2a1d2d00a
2014-05-01 13:56:22 +00:00
Narayan Kamath
1b46093d33 Adjust instruction sets for shared UID apps.
Since shared UID apps are run in the same process,
we'll need to make sure they're compiled for the same
instruction set.

This change implements the recompilation of apps that
don't have any ABI constraints.

Apps that *do* have ABI constraints are harder to deal
with, since we'll need to rescan them to figure out the
full list of ABIs they support and then re-extract the
native libraries from these apps once we find an ABI we
can use throughout.

(cherry picked from commit 85703d58af1dac692d7d83c03220e45ab2a5aded)

Change-Id: I8311a683468488cc7e30381965487a3d391609ae
2014-05-01 13:55:35 +00:00
Narayan Kamath
0349e8c478 Package manager changes for dual zygote stack.
- Pass down the app's instruction set to dexopt so that
  it can compile the dex file for the right architecture.

- Also pass down the app's instruction set to rmdex, movedex
  and getSize so that they can construct the cache file
  location properly.

- Temporarily compile "system" jars such as am,wm etc. for
  both architectures. A follow up change will ensure that
  they're compiled only for one architecture (the same
  arch. as the system server).

- Java "shared" libraries are now compiled for the right
  architecture when an app requires them.

- Improve the app native library ABI detection to account
  for system apps installed in /system/lib{64}/<packagename>
  and also handle sdcard and forward locked apps correctly.

(cherry-picked from commit b4d35dc8e9702f9d0d82d35a105f0eea35672b52)
2014-05-01 13:54:48 +00:00
Narayan Kamath
99253c2da9 am fde59428: Merge "Handle /oem and /vendor as well"
* commit 'fde594288bff0b8f95567e6b27f273f50f0c5f87':
  Handle /oem and /vendor as well
2014-05-01 13:53:08 +00:00
Narayan Kamath
a7b465efc4 am d91358b2: Merge "Support per-package lib dirs for bundled apps"
* commit 'd91358b2b977ef7c3551a486f51475c0441aba6e':
  Support per-package lib dirs for bundled apps
2014-05-01 13:52:59 +00:00
Jeff Sharkey
66309e2bf7 Fix OEM native library path bug.
Bug: 13340779

(cherry picked from commit 7d3328d14bbbee01a9de1ff5b13b0446c709d835)

Change-Id: I1b4c5d138cafe3651d475ca1e048f495ff6c5f10
2014-05-01 13:52:33 +00:00
Christopher Tate
c38a807b2f Fix native-lib dir assignment & updating
The per-package /system/lib/* feature introduced bugs in the
native library path handling during app upgrade installs.  The
crux of the fix is that when recalulating the desired native
library directory, the basis for the calculation needs to be
the scanned APK's location rather than the extant package
settings entry -- because that entry refers to the pre-upgrade
state of the application, not the new state.

Bug 14233983

(cherry picked from commit 353e39a973dbbadce82fee2f83ad194e04a47449)

Change-Id: I26f17a596ca2cd7f963955c0642548c15138ae26
2014-05-01 13:52:06 +00:00
Christopher Tate
c84471c2e0 Handle /oem and /vendor as well
Bug 13170859

(cherry-picked from commit 740888f62eae158d5775be716620f0d56d87f587)

Change-Id: I7b5e206697fcbec146cac6cd83fca5c583a8cbd7
2014-05-01 13:51:33 +00:00
Narayan Kamath
fc0810e565 Support per-package lib dirs for bundled apps
Bundled apps can now use /system/lib/apkname or /system/lib64/apkname
in addition to the (globally shared) /system/lib and /system/lib64
directories.  Note that when an app is updated post hoc the update APK
will look to its normal library install directory in
/data/data/[packagename]/lib, so such updates must include *all*
needed libraries -- the private /system/lib/apkname dir will not be in
the path following such an update.

"apkname" here is the base name of the physical APK that holds the
package's code.  For example, if a 32-bit package is resident on disk
as /system/priv-app/SettingsProvider.apk then its app-specific lib
directory will be /system/lib/SettingsProvider

Bug 13170859

(cherry picked from commit addfbdc09ccf258395db8bfc510989a4c583f7ab)

Change-Id: Id82da78024a6325458b8b134d7d91ad0e5f0785e
2014-05-01 13:50:47 +00:00
Alexandra Gherghina
3c4d9c56db Merge "Adds an enabled state in UserInfo instead of DevicePolicyManager" 2014-05-01 10:49:21 +00:00