Commit Graph

2563 Commits

Author SHA1 Message Date
Dianne Hackborn
10faec4bc0 am f0e5501e: Merge "Fix issue #22989030: Separate battery whitelists" into mnc-dev
* commit 'f0e5501e093c688cd293308e0aafc2b55326c255':
  Fix issue #22989030: Separate battery whitelists
2015-08-07 22:06:31 +00:00
Dianne Hackborn
4a503b1ece Fix issue #22989030: Separate battery whitelists
We now have a new whitelist you can put apps in, which
opts them out of the old battery saver mode and new app idle,
but doesn't keep them from going in to doze.  This is for a few
special cases that we had previously whitelisted for battery saver,
and inherited to the new modes...  ultimately we should figure out
how to get these apps out of the whitelist completely, but this
will help for now.

Apps in this new whitelist are not shown in the UI, because they
are still significantly restricted by not being able to operate
normally in doze.  This also means they are still visible in the
list of all apps for the user to be able to put them on/off the
complete whitelist if that is what they really want.

In the course of doing this, I needed to clean up code in the
network policy manager to better separate management of the
two firewall rules that now have different whitelists applied
to them.  This also hopefully just generally simplifies and cleans
up that code.  Hopefully!

Change-Id: I92e15f2f85899571dd8b049b5e3eb1354f55f353
2015-08-07 14:23:32 -07:00
Andres Morales
84fd6e9733 am 85c73c40: Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev
* commit '85c73c40d1fd76e8a7bbd90ab80458082764c1c3':
  [UserManager] expose method to retrieve credential owner
2015-08-06 22:31:04 +00:00
Andres Morales
85c73c40d1 Merge "[UserManager] expose method to retrieve credential owner" into mnc-dev 2015-08-06 22:22:17 +00:00
Michael Wright
46b7af57d7 am d5a6df6d: Merge "Make the NullVibrator really null." into mnc-dev
* commit 'd5a6df6d228036258d616245502c1a4f85ba4b2e':
  Make the NullVibrator really null.
2015-08-06 13:59:40 +00:00
Michael Wright
d5a6df6d22 Merge "Make the NullVibrator really null." into mnc-dev 2015-08-06 13:52:34 +00:00
Andres Morales
c5548c02fe [UserManager] expose method to retrieve credential owner
Certain operations (like ConfirmCredential) can be invoked
in the context of a profile, in which case the calling code
needs to know under what profile the credential is registered.

Expose a centralized location for this information for Settings
and GateKeeper to consume.

Bug: 22257554
Change-Id: Iffe4f6a254f52d1269b9287edabcf6efa515d9d2
2015-08-05 10:50:05 -07:00
Paul Jensen
66625ff192 am dbc4edcc: Merge "Fix NOT_RESTRICTED network capability and enforce it." into mnc-dev
* commit 'dbc4edccfced5cb739bae75e8cd15cecc39cf16e':
  Fix NOT_RESTRICTED network capability and enforce it.
2015-08-05 10:11:40 +00:00
Paul Jensen
dbc4edccfc Merge "Fix NOT_RESTRICTED network capability and enforce it." into mnc-dev 2015-08-05 10:03:47 +00:00
Paul Jensen
487ffe7d3d Fix NOT_RESTRICTED network capability and enforce it.
With this change:
1. NOT_RESTRICTED should be removed from NetworkRequests that bring up
   special restricted carrier networks (e.g. IMS, FOTA).
2. NetworkRequests without NOT_RESTRICTED require CONNECTIVITY_INTERNAL
   permission to register
3. Binding sockets to networks without NOT_RESTRICTED requires
   CONNECTIVITY_INTERNAL permission

Bug:21637535
Change-Id: I5991d39facaa6b690e969fe15dcbeec52e918321
2015-08-04 07:24:24 -04:00
Todd Kennedy
9f48590554 am 772c6c0d: am 40f0efe0: Merge "Add a trace constant for PackageManager"
* commit '772c6c0d2d62af7295030ded14b3f428ab325ef4':
  Add a trace constant for PackageManager
2015-08-03 18:05:20 +00:00
Todd Kennedy
114beb21a0 Add a trace constant for PackageManager
Change-Id: Ida391be765c63d7b6da3d9fd9d1d975e51b4f3e7
2015-08-03 09:56:07 -07:00
Yusuke Sato
c2369c5301 am b98e2353: am 158560ad: Merge "Distinguish user-requested shutdown from power-related ones"
* commit 'b98e235364c2b221521f622c546733b2862e4677':
  Distinguish user-requested shutdown from power-related ones
2015-07-31 23:34:06 +00:00
Dianne Hackborn
f2269f0454 Change MNC codename to just M.
Change-Id: I4281d200ff6560791c47cf9073ceea1cb509361e
2015-07-31 17:19:03 +00:00
Dianne Hackborn
c1836bb0f1 Merge "Change MNC codename to just M." into mnc-dev 2015-07-31 17:11:58 +00:00
Yusuke Sato
705ffd1efe Distinguish user-requested shutdown from power-related ones
With this patch, when the user requested shutdown,
PowerManagerService sets sys.powerctl is set to
"shutdown,userrequested", and init runs fsck on shutdown.

When shutdown is triggered due to a low power state etc.,
the service sets the property to "shutdown,", and init
immediately shuts down the system without running the
command.

This is a follow-up CL for http://r.android.com/158525.

Bug: 21853106
Change-Id: Iae72990130fe9aa479c802f77301438190dbbfb3
2015-07-30 23:47:13 -07:00
Adam Lesinski
1c023b5aac am 00f7cb92: Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev
* commit '00f7cb924e6964c5403c55ae5e7348aad1c8ec7b':
  BatteryStats: include mobile radio active count and unknown time in checkin
2015-07-31 00:01:42 +00:00
Adam Lesinski
00f7cb924e Merge "BatteryStats: include mobile radio active count and unknown time in checkin" into mnc-dev 2015-07-30 23:50:27 +00:00
Adam Lesinski
782327bde7 BatteryStats: include mobile radio active count and unknown time in checkin
These are important values to help diagnose modem related wakeup issues.

Bug:22803686
Bug:22857991
Change-Id: Ie0164ebd194567bc10d1165d671a583674a39829
2015-07-30 23:50:10 +00:00
Michael Wright
5e829abd71 Make the NullVibrator really null.
Currently any calls into vibrate just end up in an infinite loop
until the program's stack overflows.

Bug: 22835503
Change-Id: I640c3990b597ac69d83b3656e00daad088002982
2015-07-30 15:49:50 +01:00
Dianne Hackborn
98169db36b am 8d3a67a8: Merge "More maybe fix issue #22765972: Binder transactions running out..." into mnc-dev
* commit '8d3a67a8d475b43cbac50a2a186a19f4a29c7892':
  More maybe fix issue #22765972: Binder transactions running out...
2015-07-30 01:44:08 +00:00
Dianne Hackborn
6b42bc0e21 More maybe fix issue #22765972: Binder transactions running out...
...of address space causing package manager to fail

Make sure to flush binder commands when done with an async task.

Change-Id: I9f171add7051587ab854226b97a12c7e1844ad5d
2015-07-29 17:58:33 -07:00
Dianne Hackborn
0e3de6caca Change MNC codename to just M.
Change-Id: I4281d200ff6560791c47cf9073ceea1cb509361e
2015-07-29 15:20:21 -07:00
Dianne Hackborn
c2a024392a am eda1cc50: Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev
* commit 'eda1cc50cead674287616e6a852f8f281b70b9f5':
  Work on issue #22765972: Binder transactions running out of address...
2015-07-29 17:19:56 +00:00
Dianne Hackborn
eda1cc50ce Merge "Work on issue #22765972: Binder transactions running out of address..." into mnc-dev 2015-07-29 17:05:58 +00:00
Jeff Sharkey
667f35fab8 am b8040265: Merge "Give secondary users read-only physical cards." into mnc-dev
* commit 'b8040265dd0d5a2a96e0850623647dad2f528db1':
  Give secondary users read-only physical cards.
2015-07-29 04:04:41 +00:00
Dianne Hackborn
86cbc2bf30 Work on issue #22765972: Binder transactions running out of address...
...space causing package manager to fail

Lower the maximum IPC size we use in various places, to keep it
under the threshold of becoming dangerous.  Now everything tries
to keep not much more than 64k.

Change-Id: I814013097966a7843179e5d581bfdb254c5ae318
2015-07-28 18:13:21 -07:00
Jeff Sharkey
4634987668 Give secondary users read-only physical cards.
Long ago, we mounted secondary physical cards as readable by all
users on the device, which enabled the use-case of loading media on
a card and viewing it from all users.

More recently, we started giving write access to these secondary
physical cards, but this created a one-directional channel for
communication across user boundaries; something that CDD disallows.

This change is designed to give us the best of both worlds: the
package-specific directories are writable for the user that mounted
the card, but access to those "Android" directories are blocked for
all other users.  Other users remain able to read content elsewhere
on the card.

Bug: 22787184
Change-Id: Ied8c98995fec1b7b50ff7d930550feabb4398582
2015-07-28 14:42:34 -07:00
Jeff Sharkey
e5a0e17667 am f6e9a3ed: Merge "More info to support CTS, fix reconcile bug." into mnc-dev
* commit 'f6e9a3ede53ae487838c19714ad62f25a4a6ca4c':
  More info to support CTS, fix reconcile bug.
2015-07-23 18:57:02 +00:00
Dianne Hackborn
eaf3de13ff am 6f64e737: Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev
* commit '6f64e737f046cd9ae13e260027781acfabaa4cba':
  Fix issue #22612630: Ensure SMS/Call delivery during Doze
2015-07-23 18:56:39 +00:00
Jeff Sharkey
f6e9a3ede5 Merge "More info to support CTS, fix reconcile bug." into mnc-dev 2015-07-22 19:40:44 +00:00
Dianne Hackborn
6f64e737f0 Merge "Fix issue #22612630: Ensure SMS/Call delivery during Doze" into mnc-dev 2015-07-22 19:04:00 +00:00
Jeff Sharkey
85ced63268 More info to support CTS, fix reconcile bug.
Surface more details and commands for storage volumes to support
CTS testing.  Fix user reconciliation bug that skipped user setup on
empty volumes.

Bug: 22658804, 22633097
Change-Id: I4221312d1cce24d1f5a2c108095cf3cf471598ed
2015-07-22 11:11:50 -07:00
Dianne Hackborn
451c3468b9 Fix issue #22612630: Ensure SMS/Call delivery during Doze
Add whitelist timeout for SMS.

Change-Id: I3392093000ad177a93b6ef36fb18f0398a671423
2015-07-21 17:39:46 -07:00
Fyodor Kupolov
4dee174f72 am 55a116d0: Merge "Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction" into mnc-dev
* commit '55a116d00ca3f7b84a6af1c5c3472323ad5bc6ca':
  Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction
2015-07-21 20:47:45 +00:00
Fyodor Kupolov
53019287fd Updated JavaDoc for DISALLOW_MODIFY_ACCOUNTS restriction
Bug: 21521860
Change-Id: I0c2659f84589a77432317fbc89d49716027577d3
2015-07-21 12:06:14 -07:00
Svetoslav
4b27514e04 am 08dda27b: Merge "Make sure we get valid package name or fail." into mnc-dev
* commit '08dda27be4678f2ab5bdc7e210d511ec105c158c':
  Make sure we get valid package name or fail.
2015-07-15 23:12:53 +00:00
Svetoslav
7395cbf070 Make sure we get valid package name or fail.
bug:22492225

Change-Id: I7b7dce9a8e398c4615bcb700de80241e94c4320c
2015-07-15 15:58:44 -07:00
Dianne Hackborn
e632586957 am 1d4247c4: Merge "Improve tracking of screen on reasons." into mnc-dev
* commit '1d4247c4cc89c6d62e44ed3115f26579979b44b5':
  Improve tracking of screen on reasons.
2015-07-15 17:25:01 +00:00
Dianne Hackborn
280a64e793 Improve tracking of screen on reasons.
- New screen on app op to record the last time each app has
  caused the screen to be turned on.
- New battery stats event that tells us the reason the screen
  has been asked to turn on.
- Propagate out power manager API to specify the reason a caller
  is asking to have the screen turned on.

Note that currently the window flag to turn the screen on bypasses
much of this because it is being handled in the window manager by
just directly telling the power manager to turn the screen on.  To
make this better we need a new API where it can specify who it is
calling the API for.

Change-Id: I667e56cb1f80508d054da004db667efbcc22e971
2015-07-15 09:59:07 -07:00
Dianne Hackborn
63cb6c4216 am f1f8b9cc: Merge "Fix issue #21626564: MMS should be receivied while Dozing" into mnc-dev
* commit 'f1f8b9cc3ff5774e695568e8f02b018c0fd02844':
  Fix issue #21626564: MMS should be receivied while Dozing
2015-07-15 01:57:51 +00:00
Dianne Hackborn
fd854ee58c Fix issue #21626564: MMS should be receivied while Dozing
We now place whoever is receiving the MMS on the temporary
whitelist while doing so, so they can get network access to
download it.

There was also an issue that needed to be fixed where we
were no longer updating the list of allowed uids while
dozing based on their proc states...  we now do that.

Also did a bit of optimization of the temp white list update
path do the network policy manager, instead of going through
a broadcast we now directly call in to the network policy
manager.  This also allows us to have a synchronous version
of updating the list, so we can know the app has network access
before we tell it to do anything.

Finally added battery stats events for things going on and off
the whitelist so we can diagnose the behavior there.

Change-Id: Ic7fe010af680034d9f8cb014bb135b2addef7455
2015-07-14 18:33:08 -07:00
Mathieu Chartier
30e8a36de1 am ad4a285a: am ebac4d1b: Merge "Change conditionallyCheckInstanceCounts to use countInstancesOfClasses"
* commit 'ad4a285af619ea29f79dbe4da19061c49f24a8c9':
  Change conditionallyCheckInstanceCounts to use countInstancesOfClasses
2015-07-14 22:53:05 +00:00
Jeff Sharkey
983294596e Better handling of storage paths.
Give more details about why we failed to create storage paths, and
search for underlying volumes using canonical paths.

Bug: 22135060
Change-Id: I75d3584403ece310438b05f5b9fe72d94c9096c6
2015-07-14 13:08:22 -07:00
Marco Nelissen
aa41103668 Use original path if translated path doesn't exist
Bug: 22376538
Change-Id: I2f6af4fa31c097e2e2d619a068cf83721091c450
2015-07-14 08:25:23 -07:00
Svet Ganov
6ee871e598 Teach storage appops.
For modern apps targeting M SDK and up the external storage state
is deterined by granted permissions. For apps targeting older SDK
the storage access is determined by app ops correspning to the
storage permissions as the latter are always granted.

When app ops change we do not remount as we kill the app process
in both cases enabling and disabling an app op since legacy code
is not prepared for dynamic behavior where an operation that failed
may next succeed. Hence, we remount when we start the app.

For modern apps we don't kill the app process on a permission
grant, therefore we synchronously remount the app storage.

bug:22104923

Change-Id: I601c19c764a74c2d15bea6630d0f5fdc52bf6a5a
2015-07-13 18:22:30 -07:00
Mathieu Chartier
d288a26672 Change conditionallyCheckInstanceCounts to use countInstancesOfClasses
countInstancesOfClasses allows passing multiple classes unlike
countInstanceOfClass. This provides a speedup since we dont traverse
the heap multiple times.

Changed ActivityThread.dumpMemInfo to do a GC since countInstancesOfClass
no longer does GC before counting.

https://code.google.com/p/android/issues/detail?id=177552

Change-Id: Ia85684f40cf59a52aa71a8479c711a994651209b
2015-07-10 15:33:59 -07:00
Dianne Hackborn
782d498268 Fix issue #22328792: Fix scalability issues in AssistStructure
We can now stream the AssistStructure across processes, avoiding
IPC size limitations for large structures.  There is also a new
API that gets called on the VoiceInteractionSession if there is
a failure retrieving the assist data.

Also fix issue #22351981: Runtime restart due to ANR in system server,
getting rid of a deadlock.

And also tweak object lifecycles to try to avoid keeping around
in an app the previous AssistStructure after we request a new one.

Change-Id: Ifb136a0d31a14e56a8db6b90768d9fc65557a17f
2015-07-09 14:06:47 -07:00
Adam Lesinski
7fb1655a89 Merge "BatteryStats: Fail gracefully on corrupt battery stats" into mnc-dev 2015-07-09 01:15:15 +00:00
Adam Lesinski
9ae9cba020 BatteryStats: Fail gracefully on corrupt battery stats
Bug:22328963
Change-Id: Id0b4c6334706e58483d5fdfd2c1137bfb821c409
2015-07-08 17:35:42 -07:00