Add getUidsUpdatedCpuFreqTimes and getUidsUpdatedConcurrentTimes,
which skip reading stats for UIDs that haven't been updated since
before a time passed in by their caller, and pass a new lastUpdate
time back to the caller. This is implemented by querying a new map
that holds the most recent update time for each new UID.
This approach has a potential race when a UID is updated after we have
already read its stats, but before we finish iterating through the
rest of the BPF map. By not skipping UIDs updated up to 1s before
lastUpdate, we improve the chance that such an update will be picked
up the next time getUidsUpdated*Times is called. Though this doesn't
completely eliminate the risk of a race, the consequences of the race
aren't that severe - we could undercount some runtimes by ~seconds at
worst, and only until the affected UID runs again.
Extend existing tests to check that these new functions behave like
the existing getUids*Times functions when passed a last update time of
0, and add new testcases to exercise the case where a nonzero last
update time is used.
Test: libtimeinstate_test passes
Bug: 138317993
Change-Id: I06ddf8bd7ab7812d067f3a1f5b2fbedeae016bfc
Signed-off-by: Connor O'Brien <connoro@google.com>
oneway transaction errors or parcel contents will be dropped. Whenever
there is an error returned from one of these or data is written to the
parcel, we are now logging it here.
Fixes: 148640588
Test: boot, check logs
Change-Id: I96ad47dc39d6deb03805608ee1b21b090332411a
TextOutput implementation has some static variables contributing a small
amount to private dirty memory, but we don't need it.
Bug: 148676615
Test: dumpsys_test
Change-Id: I2133b136f5d1265670b7f94d6e2413caf88a2149
If binderfs is mounted, dumpstate should read binder stats
from /dev/binderfs/binder_logs instead of debugfs.
Test: adb shell dumpstate
Bug: 136497735
Change-Id: I4e7856078fd8db242eee65039c3950f69d992ca4
Since it needs to be seen by aidl_metadata_json.
(this is simpler than having aidl_interface.go inject an exception here,
which could get quite messy)
Bug: 145920591
Test: builds
Change-Id: If6952f0c6ad9677dec807fd5da26b255b52100c3
Reason for revert: Breaking up the original topic into individual CLs so
that we can merge non-broken code sooner (and fix/merge the broken test
on its own).
Reverted Changes:
Ic30045e59: Revert "[dexopt] Allow secondary dex files to gene...
Test: adb shell pm bg-dexopt-job with app installed that uses secondary
dexes, verify app image is generated for secondary image. Launch app and
verify no class linker/class loader/image space warnings in logcat
Change-Id: Id6e633fb95798041df75e0e3e8b926aa6038a9ac
Typically, BUGREPORT_MODE_TELEPHONY takes single-digit seconds, which
leaves the routine waiting for just USER_CONSENT_TIMEOUT_MS (30 seconds)
for the user to respond. Given the sizeable dialog with lots to read, we
don't believe this is a reasonable default.
We increase the timeout specifically for MODE_TELEPHONY to be 2 minutes,
which should then roughly match the time it takes a full report to be
generated, and plenty of time for the user to fully read the consent
dialog.
Bug: 146521742
Test: manual, ensure timeout happens after 2 minutes instead of 30
seconds
Change-Id: I3a5d9c696470a0dc3cbeb0d84b78ea36a3694fea
Much of the current info is not suitable to share with carriers from
devices running user builds, so we strip much of it out.
We also show a progress notification for connectivity reports now to
satisfy system health requirements for a user-visible indicator.
Bug: 146521742
Test: take bug report on user build
Test: atest dumpstate_test
Change-Id: I21182e75dd85936c979e8b983aa03cb3b02420b7
After creating tests and fixing bugs surrounding loading multiple app
images into the runtime we can safely enable generating app image files
for secondary dexes.
Test: adb shell pm bg-dexopt-job with app installed that uses secondary
dexes, verify app image is generated for secondary image. Launch app and
verify no class linker/class loader/image space warnings in logcat
Bug: 149098478
Change-Id: Iaa04175ee56aae69f41f3e2972c322049cfc9e26
And pass --boot-image instead of --runtime-option -Ximage (read nicer)
Bug:119800099
Test: boots, apps get compiled with the right image
Change-Id: I40edb8c72e30e535696fc52bfa9da81d3fe635ab
VtsKernelBinderTest include the Gtest of binderSafeInterfaceTest,
binderLibTest, binderDriverInterfaceTest, and memunreachable_binder_test
Bug: 132702215
Test: atest memunreachable_binder_test
Change-Id: If03dd7017e96679da4d15f0008080dadfebb377f
Empty, since the functionality was moved to libbinder/libhwbinder to
remove extra lib dependency.
Bug: 148692216
Test: N/A
Change-Id: Ie94f0a7f64213c2265b4207db2e5b55b5bdd01a1