Commit Graph

6531 Commits

Author SHA1 Message Date
Max Dashouk
41545aa38f Merge "Fixes the bug that can occur when StatsCompanionService calls StatsService to update UID data and overflows kernel transfer buffer." into qt-dev
am: 585422a5d2

Change-Id: I72926b7aa08c7723ab7f6087becf8185cfabbe01
2019-05-23 20:05:15 -07:00
TreeHugger Robot
585422a5d2 Merge "Fixes the bug that can occur when StatsCompanionService calls StatsService to update UID data and overflows kernel transfer buffer." into qt-dev 2019-05-24 00:26:19 +00:00
Max Dashouk
11e0d40bbe Fixes the bug that can occur when StatsCompanionService calls
StatsService to update UID data and overflows kernel transfer buffer.

In this case, the IPC call silently fails. The issue was discovered in Android Automotive Embedded use case that employs multiuser setup. This causes more uid data being sent via one-way StatsCompanionService::informAllUidData call than usual and can trigger the issue. As the result, uid map on statsd side is empty and many metrics are not captured.

Bug: b/132444397
Fixes: b/132444397
Test: Did a clean build of master branch and flashed the device. adb
shell cmd stats print-uid-map returned without any result. Repeated the
steps after implementing the fix, print-uid-map returns the results now.

Change-Id: I1451c13b36696449c145c51618c68d10e29a596a
2019-05-23 20:53:58 +00:00
Tej Singh
ea2bdcd36f Merge "Statsd: Add watchdog rollback to experiment ids" into qt-dev
am: 42fb4bb1e9

Change-Id: Ia47f663b1dcbab9c4f9f8ce2b49cde6545d46ba1
2019-05-23 12:47:46 -07:00
Michael Groover
1eb50d4f78 Merge "Document device ID access restriction target SDK behavior" into qt-dev
am: f087f06ed9

Change-Id: I047d6f523a59ee637b2b795590c2ecd8c4b31509
2019-05-23 12:31:16 -07:00
TreeHugger Robot
42fb4bb1e9 Merge "Statsd: Add watchdog rollback to experiment ids" into qt-dev 2019-05-23 19:25:43 +00:00
TreeHugger Robot
f087f06ed9 Merge "Document device ID access restriction target SDK behavior" into qt-dev 2019-05-23 18:35:44 +00:00
Sudheer Shanka
a9a78e743f Merge "Notify StorageManagerService when storage related app ops change." into qt-dev
am: 82f98334d6

Change-Id: I12363da54d737240c58d046b751b2d8157a68083
2019-05-21 10:22:50 -07:00
Michael Wachenschwanz
f9634408e1 Merge "Clear the Parcel before writing an exception during a transaction" into qt-dev
am: d2111df37b

Change-Id: Ic6d3c12b503068a3d4d98e210c16ba56b5b1876f
2019-05-21 09:12:41 -07:00
Sudheer Shanka
82f98334d6 Merge "Notify StorageManagerService when storage related app ops change." into qt-dev 2019-05-21 05:07:51 +00:00
Tej Singh
73f8e9b086 Statsd: Add watchdog rollback to experiment ids
Stores experiment ids to disk for watchdog rollback initiate/success
events as discussed.

Test: gts in topic
Bug: 131768455
Change-Id: I32768fe5c5c21c43811e25d8f87faae0c8d82c1f
2019-05-20 22:52:40 +00:00
Michael Wachenschwanz
d2111df37b Merge "Clear the Parcel before writing an exception during a transaction" into qt-dev 2019-05-20 22:23:12 +00:00
Sudheer Shanka
b1613982d0 Notify StorageManagerService when storage related app ops change.
StorageManagerService needs to trigger update of storage mountpoints
when an app gets storage access, so update AppOpsService to notify
StorageManagerService synchronously when storage related app ops change.

Also, when an app gets REQUEST_INSTALL_PACKAGES appop denied, kill the
app.

Bug: 132466536
Test: manual
Test: atest cts/hostsidetests/appsecurity/src/android/appsecurity/cts/ExternalStorageHostTest.java
Change-Id: I130dde1bcffea6c96e5d8c173055737850af6151
2019-05-20 10:57:44 -07:00
Nicolas Geoffray
72d176b3ba Merge "Workaround for USAP support in jitzygote." into qt-dev
am: 94b2981853

Change-Id: Icaab0d441867ee4d28a69aa8b52416a2b8bf1f3e
2019-05-17 05:55:44 -07:00
Nicolas Geoffray
94b2981853 Merge "Workaround for USAP support in jitzygote." into qt-dev 2019-05-17 12:31:12 +00:00
Nicolas Geoffray
e66a2bf226 Workaround for USAP support in jitzygote.
USAP improve app startup by ~5ms, so enable it for the
jitzygote experiment.

Bug: 119800099
Test: boots and usap processes live
Change-Id: I918d81f56cc7e9fcc8a053feadd7878108e6d590
2019-05-17 08:42:28 +00:00
Joe Onorato
af0b1e11b3 Merge "Add new IncidentManager.requestAuthorization method that takes an executor." into qt-dev
am: 61935fd871

Change-Id: Ia8ca6c3860fcf93664110b527ed406df55e5ae9b
2019-05-16 15:29:36 -07:00
Joe Onorato
fffa4098a7 Add new IncidentManager.requestAuthorization method that takes an executor.
This is @hide for Q now that we're past API freeze, and will be
@SystemApi in master.

Bug: 126700920
Bug: 126701153
Bug: 130351719
Test: bit GtsIncidentConfirmationTestCases
Test: bit GtsIncidentManagerTestCases
Change-Id: Iac6a058017a86c1927502c529e5a7f3881eb56a7
2019-05-16 11:51:54 -07:00
Michael Wachenschwanz
06041db074 Clear the Parcel before writing an exception during a transaction
This prevents any object data from being accidentally overwritten by the
exception, which could cause unexpected malformed objects to be sent
across the transaction.

Test: atest CtsOsTestCases:ParcelTest#testExceptionOverwritesObject
Fixes: 34175893
Change-Id: Iaf80a0ad711762992b8ae60f76d861c97a403013
2019-05-15 23:10:02 -07:00
Ian Pedowitz
563abce4ed Merge "Revert "Revert "Android Q is API 29""" into qt-dev
am: a326dfb1e5

Change-Id: I0674668835cd5a281e8a01c4b5bdb870595a8305
2019-05-15 13:36:05 -07:00
Ian Pedowitz
a326dfb1e5 Merge "Revert "Revert "Android Q is API 29""" into qt-dev 2019-05-15 16:28:54 +00:00
Jeff Sharkey
b7be677e24 Merge "Explicitly request clearing of external storage." into qt-dev
am: 9637326ea8

Change-Id: I8ff972872299581945cff1748e79ca84e8ac8b47
2019-05-14 19:06:04 -07:00
Jeff Sharkey
75ab7a6293 Merge "Remember last time we mounted a volume." into qt-dev
am: 3ad357f649

Change-Id: I01fe1aa640f3db4654bb7f27349397ac946b1bc9
2019-05-14 18:30:17 -07:00
Jeff Sharkey
9637326ea8 Merge "Explicitly request clearing of external storage." into qt-dev 2019-05-15 01:29:08 +00:00
Jeff Sharkey
3811f35ff7 Remember last time we mounted a volume.
Bug: 131751531
Test: atest --test-mapping packages/providers/MediaProvider
Change-Id: Ia5f6153aa15ea923d30085060269125e15e8e62c
2019-05-14 15:50:00 -06:00
Jeff Sharkey
3f704637b4 Explicitly request clearing of external storage.
Similar to how we target DE and CE storage areas, callers need to
specifically ask to work with EXTERNAL storage.  This is because
external storage often lives on a separate device from where internal
DE and CE data lives.

As one specific example, if we're moving an app between two
"internal" storage devices, we don't want to clean up the data
for that package on external storage, since it's not being moved.

This change also expands to all mounted external storage devices,
not just the storage backed by the incoming UUID.

Bug: 113277754
Test: atest android.appsecurity.cts.StorageHostTest
Test: atest android.appsecurity.cts.ExternalStorageHostTest
Test: atest --test-mapping frameworks/base/services/core/java/com/android/server/pm/
Change-Id: Ie125303726dd757ee45bd373f53addb35569c2f7
2019-05-14 14:55:15 -06:00
Ian Pedowitz
1912a57900 Revert "Revert "Android Q is API 29""
This reverts commit 60c71cee6e.

Reason for revert: Rolling forward for Q-Finalization

Bug: 131429032
Bug: 129975435
Change-Id: Idd812d93b767d8a672b9ada58c8bcc2441395847
2019-05-12 19:44:42 +00:00
Joe Onorato
80ca5b18b1 Merge "Fix another copy and paste of the copy and paste error." into qt-dev
am: 786705d0ab

Change-Id: I2415f6912a4b88179bde9bcfc450ac845040e45b
2019-05-10 11:36:10 -07:00
Joe Onorato
cab1db11ee Fix another copy and paste of the copy and paste error.
Bug: 123955906
Test: bit GtsIncidentConfirmationTestCases:*
Change-Id: I251a0295fbd64e8abea2a42af9cc23fb2c39bc63
2019-05-10 10:29:27 -07:00
Yiwei Zhang
5c33aeabb6 Merge "GpuStats: send a hint of activity launch to GraphicsEnvironment" into qt-dev
am: b137faed01

Change-Id: I4dc7cecee11739ab2ab15bb8a644e845963b6fbb
2019-05-09 23:56:35 -07:00
Hai Zhang
8cf15c3323 Merge "Remove hasIsolatedStorage() related logic from PackageParser." into qt-dev
am: 1fca828af3

Change-Id: Ia539e71c6636bf5ed05e83a10bc46c889745671f
2019-05-09 22:37:52 -07:00
Michael Groover
b0401fb609 Document device ID access restriction target SDK behavior
Fixes: 132392748
Test: Build
Change-Id: I9aed95087eb97fe206501a464187347e139eb2c3
2019-05-09 19:36:57 -07:00
Sudheer Shanka
3d57a0157f resolve merge conflicts of 803c052816 to qt-dev-plus-aosp
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I6c435c2e8443cd7bf5959bfbdfb05f188308d524
Merged-In: Ib8a10d3a9097c1dc4132a71782d622e9e3c3747d
2019-05-10 00:36:21 +00:00
Yiwei Zhang
b137faed01 Merge "GpuStats: send a hint of activity launch to GraphicsEnvironment" into qt-dev 2019-05-09 23:45:47 +00:00
TreeHugger Robot
1fca828af3 Merge "Remove hasIsolatedStorage() related logic from PackageParser." into qt-dev 2019-05-09 20:44:26 +00:00
Sudheer Shanka
803c052816 Merge "Remove storage sandboxes related code." into qt-dev 2019-05-09 20:38:16 +00:00
Hai Zhang
e7e00bdaca Remove hasIsolatedStorage() related logic from PackageParser.
The ACCESS_MEDIA_LOCATION and WRITE_OBB permissions will always be
available.

Bug: 112545973
Fixes: 132226317
Test: presubmit
Change-Id: Ie61eba427b48f347438522bc11cfa748ad5ba1f1
2019-05-09 11:29:50 -07:00
Sudheer Shanka
64501e5126 Remove storage sandboxes related code.
Bug: 131115422
Test: manual
Test: atest --test-mapping packages/providers/MediaProvider
Test: atest cts/hostsidetests/appsecurity/src/android/appsecurity/cts/ExternalStorageHostTest.java
Test: atest DownloadProviderTests
Test: atest cts/tests/app/src/android/app/cts/DownloadManagerTest.java
Test: atest cts/tests/app/DownloadManagerLegacyTest/src/android/app/cts/DownloadManagerLegacyTest.java
Test: atest cts/tests/app/DownloadManagerApi28Test/src/android/app/cts/DownloadManagerApi28Test.java
Change-Id: Ib8a10d3a9097c1dc4132a71782d622e9e3c3747d
Merged-In: Ib8a10d3a9097c1dc4132a71782d622e9e3c3747d
2019-05-09 17:47:30 +00:00
Yiwei Zhang
e54faf5818 GpuStats: send a hint of activity launch to GraphicsEnvironment
USAP preloads the driver in usap pool, and those processes in the pool
are not bound with any applications. Previously we send GpuStats based
on the completion of driver loading. So with usap enabled, we won't be
able to receive stats for system built-in driver.

If we send the stats when all the existing stats fields are filled,
there will be tons of selinux violations, because those non app
processes are trying to send the stats as well.

So we end up sending the stats based on the hint of activity launch.

Bug: 131866357
Test: dumpsys gpu with enable/disable usap and check the selinux
Change-Id: I32fcc15aeba2f2e89ba6dd9deae2c27187d2071e
2019-05-08 18:43:11 -07:00
Cody Northrop
42685d966e Merge "ANGLE: Reorder debug package check" into qt-dev
am: ea5576ef7e

Change-Id: I139b5914b39a6a57e53471a8fee599171aa6de2e
2019-05-08 13:13:31 -07:00
TreeHugger Robot
ea5576ef7e Merge "ANGLE: Reorder debug package check" into qt-dev 2019-05-08 19:46:13 +00:00
Yiwei Zhang
02ac9c3724 Merge "GpuStats: Plumb Vulkan api version" into qt-dev
am: 94459e7815

Change-Id: I8cc30d7ff0ec1d51ceeb99ad4d05b8397d2f4366
2019-05-07 11:46:33 -07:00
TreeHugger Robot
94459e7815 Merge "GpuStats: Plumb Vulkan api version" into qt-dev 2019-05-07 18:19:36 +00:00
Andrei Onea
f62d871729 Fix setting hidden api usage log sample rate
This fix addresses two related issues: one with the
DeviceConfig.onPropertiesChangedListener, and another with
HiddenApiUsageLogger.setHiddenApiAccessLogSampleRates.
In both cases, setting one of the sample rates
(hidden_api_access_log_sampling_rate or
hidden_api_access_statslog_sampling_rate) unsets the other. This is due
to them being sent sequentially instead of simultaneously.
Additionally, out of an abundance of caution, mirror the behaviour in
attemptConnectionToPrimaryZygote and attemptConnectionToSecondaryZygote
for the statslog sample rate. This was overlooked in a previous change.

Bug: 119217680
Test: m
Test: cts-tradefed run cts-dev -m CtsStatsdHostTestCases -t \
            android.cts.statsd.atom.UidAtomTests#testHiddenApiUsed

Change-Id: I8a5534403269a2339fcabc8f847199ab837ae71b
Merged-In: I8a5534403269a2339fcabc8f847199ab837ae71b
(cherry picked from commit b019c7eea3)
2019-05-07 18:18:08 +01:00
Yiwei Zhang
27a2743685 GpuStats: Plumb Vulkan api version
This change plumbs the advertised Vulkan api version into GraphicsEnv.
GLES api version and CPU Vulkan api version will be appended when statd
pulls GpuStatsGlobalInfo from GpuStats to save app launch overhead.

Bug: 131866357
Test: build, flash and boot
Change-Id: I7faa924eccc81499cd4f1fd54803e3a62bd3153a
2019-05-06 17:51:00 -07:00
Cody Northrop
41149c3031 ANGLE: Reorder debug package check
As originally coded, debug ANGLE packages could only be used
if ANGLE was properly installed, such that a single answer
was received from ANGLE_FOR_ANDROID.  Since ANGLE is only
required on new Q devices, debug packages could not be loaded
on devices that upgraded from P.

This CL changes the ordering such that debug packages are
detected before checking for propertly installed ANGLE package.

Bug: 132076614
Test: Manually test app with and without debug package
Test: atest CtsAngleIntegrationHostTestCases

Change-Id: I88f0417c7e74c2c20d087f2137eeb78879143ce5
2019-05-06 13:57:43 -06:00
Varun Shah
8a17c84a83 Merge "Add Locale#script to Configuration proto." into qt-dev
am: cc1159a166

Change-Id: I449f02fa3dcef56e4ff681f3919065bc94d2fddc
2019-05-06 12:12:44 -07:00
TreeHugger Robot
cc1159a166 Merge "Add Locale#script to Configuration proto." into qt-dev 2019-05-06 18:29:30 +00:00
TreeHugger Robot
085528db5e Merge changes from topic "screenshot-fd-optional-qt-dev" into qt-dev
* changes:
  Use dev/null instead of tmp file
  Notify the caller about I/O error
  Pass valid file descriptor to binder
2019-05-03 15:12:16 +00:00
Abhijeet Kaur
bc3df9f356 Use dev/null instead of tmp file
Use dev/null fd (instead of using fd from temporary file) when
screenshot fd is passed as null, as file deletion does not need
to be handled for dev/null.

Test: Take interactive bugreport (which does not need screenshot)
manually using shell (which calls bugreport API)
Bug: 128981582
Merged-In: I1719899e6cf3bffe1a96849691c051ff4f3a05ec
Change-Id: I1719899e6cf3bffe1a96849691c051ff4f3a05ec
2019-05-03 15:00:46 +01:00