Commit Graph

3174 Commits

Author SHA1 Message Date
Adam Lesinski
a8018ac47a BatteryStats: Fix units on battery charge counter
The unit for the battery charge counter is in micro-Ampere-hours, not coulombs.
We store the value as uAh but display it in dumpsys as mAh.

Bug:27174034
Change-Id: Ib5cc1ee1c5c191336a3e1f18dbb12c38e833f8d0
2016-05-03 10:41:47 -07:00
Tianjie Xu
8ebedfd0d9 Merge "Set security update label in framework" into nyc-dev 2016-05-02 17:38:52 +00:00
Lorenzo Colitti
4a992cbde8 Merge changes I86257bc8,I5c2221c5 into nyc-dev
* changes:
  Use Netd's binder interface to set resolver configuration.
  Add Gservices settings for resolver configuration.
2016-05-02 12:49:19 +00:00
Pierre Imai
8e48e67827 Add Gservices settings for resolver configuration.
BUG: 25731675

Change-Id: I5c2221c5a2478fe2fa0fdf9ceeb13a932d758d33
2016-05-02 08:26:09 +00:00
TreeHugger Robot
3cb7f6bdcd Merge "BatteryStats: Keep track of coulomb counter" into nyc-dev 2016-04-30 02:21:38 +00:00
Adam Lesinski
926969b411 BatteryStats: Keep track of coulomb counter
Bug:27174034
Change-Id: Ica66817faa20b9788536f28f0e593483f033904b
2016-04-29 17:40:11 -07:00
Tianjie Xu
ac75f1effa Set security update label in framework
GmsCore will use different filenames to distinguish a security update
from a normal update. (update.zip for normal update and update_s.zip for
security update.) So, if framework observes the filename as
"update_s.zip", write command "--security" to BCB. This cmd ask the
recovery image to choose the right background string for update.

Bug: 27837319
Change-Id: I2ef12267a6be57d8a81f7f9f34c09aea54530c1f
2016-04-29 16:19:30 -07:00
Andreas Gampe
0693fd85f6 Frameworks/base: Use holder in FileUtils
Use a holder for an uncommon Pattern instance in FileUtils.

Allows to compile-time initialize:
* android.os.FileUtils

Bug: 28174137
Change-Id: I4a7a388795a96678b4b26e4f2c02b1117d6a67f6
2016-04-28 19:33:05 -07:00
Jeff Sharkey
ce18c81677 Introduce "unlocking" vs "unlocked" nuance.
There is a narrow window of time during user unlock where we're
reconciling user storage and dispatching the "unlock" status to
various internal system services.  While in this "unlocking" state,
apps need to be told that the user still isn't actually "unlocked"
so they don't try making calls to AccountManager, etc.

The majority of internal services are interested in merging together
both the "unlocking" and "unlocked" state, so update them.

Clarify naming in AccountManagerService to make it clear that a local
list is being used, which mirrors the naming in MountService.

To match UX/PM requested behavior, move PRE_BOOT_COMPLETED dispatch
after the user is unlocked, but block BOOT_COMPLETED dispatch until
after all PRE_BOOT receivers are finished to avoid ANRs.

Bug: 28040947, 28164677
Change-Id: I57af2351633d9159f4483f19657ce0b62118d1ce
2016-04-28 10:51:39 -06:00
Badhri Jagan Sridharan
68cdf1997f Add low power stats to batteryhistory
Exports SOC specific low power state info to batterystats service.
BatteryStats service queries the powerHAL module whenever and
updates the HistoryStepDetails whenever setBatteryState is called by the
BatteryService. The stats get appended to the battery history whenever
there is a change in the battery level.

Bug: 26564574
Change-Id: I02b4db00aec0c69d1558492224f3a4dc1c386fa6
2016-04-27 13:08:40 -07:00
Kweku Adams
5b2747e133 Removing extraneous field from batterystats dumpsys.
Accidentally introduced in ag/851920.

Change-Id: I89ac490cef1735defa7165e6d27beae20490091d
2016-04-25 10:44:05 -07:00
Ricky Wai
7881cf8f81 Make "work mode on dialog" show personal challenge in unified work lock
Bug: 28183335
Change-Id: Ib212b283b9561f88899f6e7ea130944391b6e558
2016-04-25 10:26:14 +00:00
Svet Ganov
ae0e03a9e0 Cleanup of the PackageInstaller API - Frameworks
The PackageInstaller app manages side-loading apps as well
as permission management. It should be updatable, hence
should rely on system APIs to talk to the platform. This
is the first step of defining an API boundary.

Change-Id: I9814eafd0b22ae03b4b847a7007cdbf14c9e5466
2016-04-22 14:18:32 -07:00
Ruchi Kandoi
a2689dcf71 fix build: remove SUSTAINED_PERFORMANCE_WAKE_LOCK link
Change-Id: Ic12b98cbafcc8c81eadba119ab416a9eddb7214a
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2016-04-20 17:22:27 -07:00
Ruchi Kandoi
9c36c02f0e Revert "PowerManager: Adds the Sustained performance API."
This reverts commit 0abc001275.

Bug: 28150358
Change-Id: I99c71b3d6641310a33e898d6fd475d37c79ba9d0
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2016-04-20 20:49:18 +00:00
Ruchi Kandoi
a645c9753f Merge "window: Adds a Sustained Performance Mode window flag." into nyc-dev 2016-04-20 20:35:21 +00:00
Andreas Gampe
58f20726e9 Merge "Frameworks/base: Add holder to BaseBundle" into nyc-dev 2016-04-20 18:58:32 +00:00
Ruchi Kandoi
43e38de253 window: Adds a Sustained Performance Mode window flag.
Adds setSustainedPerformanceMode(boolean) API for applications to set
the mode for a given window. The mode will be disabled automatically when the
window is no longer in focus.

Bug: 28150358
Change-Id: Ibe8bc564eeaaccbcaad5c4f792cda16da931dffd
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2016-04-20 09:57:11 -07:00
Andreas Gampe
52764cba59 Frameworks/base: Add holder to BaseBundle
Move EMPTY_PARCEL into an inner holder class. Add holder to
preloaded-classes. Clean up dependencies.

Allows to compile-time initialize:
* android.os.BaseBundle
* android.os.Bundle
* android.os.PersistableBundle
* android.telephony.CarrierConfigManager

Bug: 27265238
Change-Id: Ib8017aa419c2985963b3c68a8046462a38652ef2
2016-04-19 20:46:43 -07:00
Joe Onorato
bee44ae8e5 Consolidate the HealthStats UI to only use milliseconds.
BatteryStats uses a mix of microseconds and milliseconds, and keeping
which one is which straight is difficult.  The internal bookkeeping
is left using us where it already does, for the extra precision. But
having the API be mixed will only make it harder for developers, and
lead them to make the same mistake that I did in the API where I
missed some conversions.

Bug: 28197858
Change-Id: I99114bae259b9bdd47ce5c22e724d87bbd63336d
2016-04-19 11:27:05 -07:00
Jeff Sharkey
d3a25ad4b9 Merge "Disable "defusable" logging for now." into nyc-dev 2016-04-19 17:10:56 +00:00
Adam Lesinski
0d47f4b646 Merge "BatteryStats: Introduce Async external stats requests" into nyc-dev 2016-04-18 23:27:10 +00:00
Jeff Sharkey
cb45951cad Disable "defusable" logging for now.
Bug: 28240784
Change-Id: I2c259867a8169eef220fb9faea6cdcafdde675b8
2016-04-18 13:56:11 -06:00
Jeff Sharkey
ad14b884f4 Merge "Consistent creation/destruction of user data." into nyc-dev 2016-04-18 19:43:18 +00:00
Narayan Kamath
a09b4d2a61 Remove unnecessary allocation+unboxing of objects.
Transforming String->int can be done with 0 allocations
using Integer.parseInt.

bug: 28078871
Change-Id: I8d9f322d7154728849dde61ef282046032858d60
2016-04-18 09:55:59 +01:00
Adam Lesinski
010bf374d8 BatteryStats: Introduce Async external stats requests
Instead of calling out to external processes with a blocking IPC,
pass along a Binder on which the external process can pass back
the response. The calling process can then wait for the reply with
a timeout.

This eliminates watchdog restarts of the system_server when an external
process like telephony or bluetooth hangs.

Bug:26842468
Change-Id: I1b242e4ed22a63f1a4a0be8c78de8ac4d7bf56c5
2016-04-15 15:27:52 -07:00
Amith Yamasani
0696434c62 Address API review for UserManager user creation
Don't return null from createUserCreationIntent()
Provide a way for apps to query if the device
supports multiple users.

Some additional documentation for UserManager class to
make things clear about the types of users and relationship
with accounts.

Change-Id: I768d816e73a1d7f61cdc415f9e482adc79e2715a
Fixes: 28150359
2016-04-15 14:10:02 -07:00
Jeff Sharkey
fcf1e55821 Consistent creation/destruction of user data.
Preparing and destroying users currently needs to be split across
installd, system_server, and vold, since no single party has all the
required SELinux permissions.

When preparing user directories on a storage device, always enforce
the serial number and destroy data if we run into a mismatch.  When
deleting a user, write the updated user list first before we start
destroying data.  Also start reconciling users on internal storage
at boot, so we can recover from stale data left behind from partially
destroyed users.

Check both CE and DE user directories when reconciling user storage
on a newly mounted storage device.

Bug: 27896918
Change-Id: I4536c82b0196e2720628c4f73fccb742c233350b
2016-04-15 13:35:36 -06:00
Benjamin Franz
f02420c5e1 Maybe decrypt user when quiet mode is disabled
When quiet mode is disabled for a user and that user is not currently
decrypted, we show a confirm credentials screen to trigger decryption
of that user. Only if that was successful, do we actually disable quiet
mode.

Bug: 27764124
Change-Id: Ib1f649194d89e225dad62c14f3ddba1fa3d79da2
2016-04-15 14:12:41 +01:00
Jeff Sharkey
cadfc77d03 Merge "Fix broken javadoc." into nyc-dev 2016-04-12 23:37:38 +00:00
Jeff Sharkey
f82c2f0854 Fix broken javadoc.
Change-Id: I9f2050fd6040234bb1d759ab346f79fc41247aa9
2016-04-12 15:22:57 -06:00
Felipe Leme
93c442e44f Merge "Make getStorageVolume(File file) public." into nyc-dev 2016-04-12 20:44:06 +00:00
Adam Lesinski
ba9d893976 BatteryStats: Don't log BluetoothScanTimer when it doesn't exist
Bug:27998591
Change-Id: I80ca8a2353141c16595b4be0b0aed195f40e366a
2016-04-12 12:06:03 -07:00
Felipe Leme
c250e45eda Make getStorageVolume(File file) public.
BUG: 27951594
Change-Id: I354f6a29b3fa3374ea07bcbe14096e9673d282c5
2016-04-11 18:52:28 -07:00
Fyodor Kupolov
4c74334c44 Merge "Added getProfileIds method returning array of userIds" into nyc-dev 2016-04-11 16:40:55 +00:00
Ruchi Kandoi
0f36ba81e7 Merge "batteryService: Add Charge Counter." into nyc-dev 2016-04-08 01:09:24 +00:00
Ruchi Kandoi
6361e22fea batteryService: Add Charge Counter.
Bug: 27174034
Change-Id: Ib8bc8f617288c0ad543c67e0fa609c5a0c87b5fd
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2016-04-08 01:09:02 +00:00
Fyodor Kupolov
7f98aa4aa9 Added getProfileIds method returning array of userIds
Previously many usages of UserManager.getProfiles and getEnabledProfiles
were only using ids of returned users. Given that the list of users needs
to be parceled and unparceled for Binder calls, returning array of ids
minimizes memory usage and serialization time.

A new method getProfileIds was introduced which returns an array of userIds.
Existing method calls were updated where appropriate.

Bug: 27705805
Change-Id: Ic5d5decd77567ba0f749e48837a2c6fa10e812c0
2016-04-07 16:41:57 -07:00
Jeff Sharkey
8b704d4474 Merge "Revert "Remove old FUSE bypass now that we have sdcardfs."" into nyc-dev 2016-04-07 17:56:21 +00:00
Jeff Sharkey
8575da1cc0 Revert "Remove old FUSE bypass now that we have sdcardfs."
This reverts commit feef8b62ee.

Change-Id: I90a3b8edf95cb5b631a85168671cf8b5a406d9ea
2016-04-07 17:56:06 +00:00
Jeff Sharkey
33dd156ed0 Give users and devices control over sdcardfs.
Instead of relying only on kernel support for sdcardfs, give each
device the ability to quickly toggle between sdcardfs and FUSE.  Also
add the ability to users to explicitly enable/disable the behavior
for testing and debugging purposes.

Bug: 27991427
Change-Id: Ia57f12f6ead888ab85101004bdd8c8003537b116
2016-04-07 11:30:55 -06:00
Jeff Sharkey
74cd3de6f4 Automatically trace messages on shared loopers.
There are a handful of looper threads in the system_process that
are shared by dozens of different internal services.  To help track
down what these operations are, tag the processing of each message
with a string that tries describing where it originated from: the
class name of the Handler, and the message number or class name of the
Runnable.

Bug: 28046299
Change-Id: I409ec43fea8daaae4fd70df05d4fed929a7249ae
2016-04-07 00:14:53 -06:00
Jeff Sharkey
feef8b62ee Remove old FUSE bypass now that we have sdcardfs.
This forces everyone to go through sdcardfs, instead of letting them
around the back door.

Bug: 27992761
Change-Id: If1d4d5daa4b32bb3be7de10102bab24d63552b65
2016-04-06 15:27:11 -06:00
Erik Kline
94887874e3 Don't flush DNS cache on route changes.
Since Lollipop, routes are isolated within Networks.  Flushing a
Network's DNS cache whenever that same Network's routes are updated
doesn't provide any benefit.  Any system components depending on this
behaviour need to uncovered and fixed.

Additionally, clean up no-longer-used flushNetworkDnsCache().  This
should be replaced, when needed, by a proper binder interface to netd.

Change-Id: I34bf79e4839da014d466058a876d754209d0c007
2016-04-06 11:30:51 +09:00
Dianne Hackborn
4345904050 Merge "(Docs only) Make battery stats process state docs more clear." into nyc-dev 2016-04-05 16:54:55 +00:00
Dianne Hackborn
a0200e3702 (Docs only) Make battery stats process state docs more clear.
Change-Id: I7e86705ec5fa7be8d6a74e708bbf166bec17494f
2016-04-05 09:54:02 -07:00
Glenn Kasten
5cb05f810b Merge "Fix typo" into nyc-dev 2016-04-05 15:00:22 +00:00
Glenn Kasten
570f1c8b23 Fix typo
Change-Id: I973dfaa17adbb7dce4ceda2e6985937823ef039c
2016-04-04 12:27:32 -07:00
Ruchi Kandoi
b4aa2e9c37 PowerManager: Adds isSustainedPerformanceModeSupported()
isSustainedPerformanceModeSupported() returns true if the device
supports the mode. It checks for the boolean config
"config_sustainedPerformanceModeSupported" to be set.

Bug: 22864186
Change-Id: I0f9f0bcbb8c02b19f37e9c87570d88e8f78f7992
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2016-04-04 19:25:23 +00:00
Christopher Tate
250985f556 Handle interaction of Bundle.hasFileDescriptors() with removal
Removing entries from a Bundle may change its has-FDs state, so now
induce a recheck after removals.  In support of that, make the
recheck set the known state in all cases, not just in the has-FDs
case; and note that filterValues() inherently produces a result that
is known to have no FDs.

Bug 26676151

Change-Id: Ida07b77ad2046aeafb98e0b164cd571ce45d064f
2016-03-31 13:57:42 -07:00