RESTRICT AUTOMERGE so this does not go to RVC-DEV, it is already in master.
Bug: 141581191
Test: m services.core
Change-Id: Ieb32135d30b60ad04d5f3e673391e469c83b7f84
Merged-In: Ieb32135d30b60ad04d5f3e673391e469c83b7f84
Core system image (CSI) doesn't have Launcher or Settings so no home
activity, but still needs to boot properly. This change enables the
fallback home activity, SystemUserHome, in the framework for CSI.
Bug: 149307007
Bug: 149780604
Test: $ lunch csi_arm64-userdebug; m
# flash the system.img built to crosshatch
$ atest DeviceHealthTests
Change-Id: I0f999f76e23c6316f6d5d0741a1116028e34a0ab
Merged-In: I0f999f76e23c6316f6d5d0741a1116028e34a0ab
Check that the kernel supports the Tagged Pointers feature before asking
libc to disable/enable pointer tagging.
Bug: 153114333
Test: Build coral, note no messages from SetHeapTaggingLevel.
Test: atest CtsTaggingHostTestCases
Change-Id: Id5fbd731aa70f7b0a75525387479f6123628a012
Merged-In: Id5fbd731aa70f7b0a75525387479f6123628a012
System apps and the system_server receive async tag checks, while all other
app processes have it disabled. Developers may enable async tag checks
per application with:
$ adb shell am compat 135772972 <app.name>
Bug: 135772972
Change-Id: I154623941eec8e79af347453fbca1b062346c85b
Merged-In: I154623941eec8e79af347453fbca1b062346c85b
This change corrects the VpnProfile's maxMtu defaults to match that of
the Ikev2VpnProfile. 1400 is too high as a default, and Settings will
run into an issue here quite often.
Bug: 152573931
Test: FrameworksNetTests passing
Change-Id: I97ba5903b3cc1ed6a21c706ed3d78bd8ecbeee0c
Filter out changes that are: logging only, older then enabled after P,
newer then enabled after Q.
Added missing @Test that broke builds.
Test: atest com.android.server.compat.PlatformCompatTest
Bug: 151299145
Change-Id: Ic4c12ceec3f4018a1f206b8498e8216466ecf960
Merged-In: Ic4c12ceec3f4018a1f206b8498e8216466ecf960
-Create a BarringInfo class to pass Barring information
from HAL to PhoneStateListener.
-Add a multi-callback registrant so that ServiceStateTracker
and potentially DcTracker can also listen to barring info in
the future.
Bug: 143226991
Test: make update-api && make && atest BarringInfoTest
Merged-In: I08240259f3142beeca991238bf705236f0303954
Change-Id: I08240259f3142beeca991238bf705236f0303954
Since disabled changes are disabled by default, our policy should allow
opting in to them in the final release.
Add toString to OverrideAllowedState for easier test debugging.
Test: atest com.android.server.compat.OverrideValidatorImplTest
Bug: 144552011
Change-Id: Iff01ee44d30d3e5703a980cddaf1b38435756c3c
Merged-In: Iff01ee44d30d3e5703a980cddaf1b38435756c3c
Bug: 150910582
Test: Compiled bertha_x86_64-userdebug (Chrome OS ARCVM image) for
rvc-dev, flashed eve-arcvm (Pixelbook), connected TouchVpn App, observed
that ARC's VpnTracker does not crash the system server when printing
VpnConfig objects with no ProxyInfo.
Merged-In: I3f8dd1d232e2b18dae9e99eb05c92a797a2358b9
Change-Id: I3f8dd1d232e2b18dae9e99eb05c92a797a2358b9
(cherry picked from commit c8922177c8)
This CL updates the ProcessCpuTracer.getName method to force a refresh
of the process name when the current state indicates that it was named
either 'usap32' or 'usap64'. This will prevent false attribution of
process statistics to system service processes.
Bug: 146614089
Test: Treehugger
Change-Id: Ieca4715b7aeb44ef7d1ec98773b25bdfa0a9fc6b
In common cases, to resume the next activity we need to wait for the
current one to be paused. Since starting a process for activity is
asynchronous, if we already know the process of next activity has not
started yet, we can start the process earlier so the time waiting for
the pause to complete can be saved.
Also if the launching activity is going to be the top app, we can set
the top schedule group right after its process is started so the start
time before actually launching the activity can be improved.
Although before the current activity is paused, the next top activity
may still change and results some empty processes. That should not be
a common case and the process is still useful when going back the stack,
and the empty background processes are easier to be reclaimed.
Bug: 123043091
Test: AppLaunchTest
Test: Launch calculator from launcher, the event log am_proc_start will
show "pre-top-activity".
Test: Cold launch a top activity, the system log should not show
"not expected top priority".
Test: Use startActivities to start serveral activities in a sequence.
Check "adb shell cat /proc/$pid/task/$pid/cgroup" for each process.
Only the last one has top-app, others are background.
Change-Id: I9601b66e7cc0855fd7c2b573ded31fcf8d0711ae
Merged-In: I9601b66e7cc0855fd7c2b573ded31fcf8d0711ae
Added the new APIs allowing clients like System UI to display
network icons correctly based on the provided telephony display
info.
Test: Telephony sanity tests
Bug: 148540139
Change-Id: I4dfb6eb7a313539e0565a4239d555426f12e503e
Merged-In: I4dfb6eb7a313539e0565a4239d555426f12e503e
Throw an exception if someone tries to add an
override for a logging only change. Incorporate the restriction in the
OverrideValidator.
Test: change one change to be logging only, flash device, adb shell
dumpsys platform_compat
Test: atest com.android.server.compat.CompatConfigTest
Test: atest com.android.server.compat.OverrideValidatorImplTest
Bug: 148009004
Change-Id: I379c63f8b5c54500d9066be9363a186efd55d200
Merged-In: I379c63f8b5c54500d9066be9363a186efd55d200
This change adds the ability of enabling and disabling all allowed
changes for a given package and target sdk through adb.
Bug: 149980515
Test: adb shell am enable-all 28 foo.bar && \
adb shell dumpsys platform_compat
Test: adb shell am disable-all 28 foo.bar && \
adb shell dumpsys platform_compat
Test: atest CompatConfigTest
Change-Id: Ia84d8e1162ea0b3f4c6afe87e63db56256236940
Single vendor can support multiple sku's with different capabilities.
Add support to load capability xml's from below vendor locations.
vendor/etc/sysconf/sku_${ro.boot.product.vendor.sku}/*.xml
vendor/etc/permissions/sku_${ro.boot.product.vendor.sku}/*.xml
Bug : 148582757
Test: Copy capability xml's to above mentioned vendor locations
during compilation and check if it gets loaded by
SystemConfig at runtime.
Change-Id: Ic1a332d30224f6d26afdfc230ea7c1462aefa243
loss of performance is tiny because, image will be resized at ImageUtil.isGrayscale() method.
Test: situation that one notification is sended to other resoltion devices, ex) using DEX mode,
Test: notification can be inflated at different resolution context.
Test: and app can have notification icon that is made dynamically.
Test: (it doesn't have resource for each resolution. ex: calendar notice icon with number)
Test: at this moment, judgement for grayscale can be differed from each device.
Change-Id: I2755c56869aba58287137f683a81ec4ddfd3d7c1
This commit allows the startLegacyVpn() call to start Platform VPN
profiles, allowing Settings to use the IKEv2/IPsec VPN options
When using an aliased private key, the
Ikev2VpnProfile.KEYSTORE_ALIAS_PREFIX must be prepended to the front of
the alias. This will in turn result in the fromVpnProfile() function to
pull the key from the KeyStore, as opposed to the inline-key that the
VpnManager API uses.
Bug: 148991741
Test: FrameworksNetTests passing, new tests added in subsequent CL
Test: Manually tested
Change-Id: Icbca695c353b2e12e99305676404dbf1a4495949
Update KernelSingleUidTimeReader to read BPF data rather than per-UID
proc files when the BPF data is available. This is implemented by
calling libtimeinstate functions via JNI.
Extend KernelSingleUidTimeReaderTest to exercise both the BPF and proc
file code paths.
Bug: 138317993
Test: KernelSingleUidTimerTest passes
Test: no regression in BatteryStatsTests
Change-Id: Ie5fa2605007e8c5f70a0383bf8adbd81d479abfe
Merged-In: Ie962ddd9e30d96aa0fab6104a4164af9ad02f55e
Signed-off-by: Connor O'Brien <connoro@google.com>
Update KernelCpuUidTimeReader and its subclasses to support reading
frequency, active & cluster times from BPF maps rather than proc files
on devices that support this approach. BPF-based accounting offers
improved accuracy as it can detect every context switch, whereas the
proc files attribute a full tick period to whatever happens to be
running when the tick occurs.
Add a KernelCpuUidBpfMapReader class modeled on
KernelCpuProcStringReader, with singletons for reading each distinct
set of data. These follow the locking approach used by
KernelCpuProcStringReader to ensure thread safety, but they collect
data by calling libtimeinstate functions via JNI rather than reading
text from proc files. They also provide a getDataDimensions() function
to retrieve information currently provided by the header rows of the
proc files, such as the list of available freqs or the number of cores
on each cluster.
Extend the KernelCpu*TimeReaderTest classes to exercise the BPF path
for each reader class, and add a KernelCpuUidBpfMapReaderTest modeled
on KernelProcStringReaderTest.
Bug: 138317993
Test: KernelCpu*TimeReaderTests and KernelCpuUidBpfMapReaderTest pass
Test: no regressions in BatteryStatsTests
Change-Id: Ia092e896028e5f647f6c182de05fa76c7e2e3180
Merged-In: Ie7c0b11a47289e16f72fd6868de4185e858c7e4f
Signed-off-by: Connor O'Brien <connoro@google.com>