Flip bugreport version to 2.0
- Adds support for proto dumps
- Adds support for priority service dumps
- Change order of arguments when dumping Normal priority services
- Adds a new DEFAULT priority for services which is treated the same as NORMAL priority but dumpsys does not send "--dump-priority" arguments to the service.
Bug: 67716082, 27429130
Test: Manually generate bugreport (default version) and check for any issues
Test: Load bugreport on ABT
Test: mmm -j56 frameworks/native/cmds/dumpstate && \
adb sync data && adb shell /data/nativetest/dumpstate_test/dumpstate_test && \
adb shell /data/nativetest64/dumpstate_test/dumpstate_test && \
adb shell /data/nativetest64/dumpstate_smoke_test/dumpstate_smoke_test && \
adb shell /data/nativetest/dumpsys_test/dumpsys_test && \
adb shell /data/nativetest64/dumpsys_test/dumpsys_test && \
printf "\n\n#### ALL TESTS PASSED ####\n"
Change-Id: Ie8761a2dd0425574b0d905752e1562196a1f7426
diff --git a/cmds/dumpsys/dumpsys.cpp b/cmds/dumpsys/dumpsys.cpp
index ca7d95e..5412d4d 100644
--- a/cmds/dumpsys/dumpsys.cpp
+++ b/cmds/dumpsys/dumpsys.cpp
@@ -284,14 +284,23 @@
}
void Dumpsys::setServiceArgs(Vector<String16>& args, bool asProto, int priorityFlags) {
- if ((priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_ALL) ||
- (priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_NORMAL)) {
- args.add(String16("-a"));
- }
+ // Add proto flag if dumping service as proto.
if (asProto) {
args.insertAt(String16(PriorityDumper::PROTO_ARG), 0);
}
- if (priorityFlags != IServiceManager::DUMP_FLAG_PRIORITY_ALL) {
+
+ // Add -a (dump all) flag if dumping all services, dumping normal services or
+ // services not explicitly registered to a priority bucket (default services).
+ if ((priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_ALL) ||
+ (priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_NORMAL) ||
+ (priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_DEFAULT)) {
+ args.insertAt(String16("-a"), 0);
+ }
+
+ // Add priority flags when dumping services registered to a specific priority bucket.
+ if ((priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_CRITICAL) ||
+ (priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_HIGH) ||
+ (priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_NORMAL)) {
String16 priorityType = ConvertBitmaskToPriorityType(priorityFlags);
args.insertAt(String16(PriorityDumper::PRIORITY_ARG), 0);
args.insertAt(priorityType, 1);
@@ -349,7 +358,8 @@
"----------------------------------------"
"---------------------------------------\n");
if (priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_ALL ||
- priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_NORMAL) {
+ priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_NORMAL ||
+ priorityFlags == IServiceManager::DUMP_FLAG_PRIORITY_DEFAULT) {
StringAppendF(&msg, "DUMP OF SERVICE %s:\n", String8(serviceName).c_str());
} else {
String16 priorityType = ConvertBitmaskToPriorityType(priorityFlags);