Snap for 9168953 from 19236e907903bcb226c8f72e81e9819252430abb to udc-release
Change-Id: I6e64a9b85b59d849cca26a48d39b08c610b8142f
This commit is contained in:
commit
e6a564273b
16
aoc/Android.bp
Normal file
16
aoc/Android.bp
Normal file
@ -0,0 +1,16 @@
|
||||
package {
|
||||
default_applicable_licenses: ["Android-Apache-2.0"],
|
||||
}
|
||||
|
||||
cc_binary {
|
||||
name: "dump_aoc",
|
||||
srcs: ["dump_aoc.cpp"],
|
||||
cflags: [
|
||||
"-Wall",
|
||||
"-Wextra",
|
||||
"-Werror",
|
||||
],
|
||||
shared_libs: ["libbase"],
|
||||
vendor: true,
|
||||
relative_install_path: "dump",
|
||||
}
|
3
aoc/aoc.mk
Normal file
3
aoc/aoc.mk
Normal file
@ -0,0 +1,3 @@
|
||||
BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/aoc/sepolicy
|
||||
|
||||
PRODUCT_PACKAGES += dump_aoc
|
61
aoc/dump_aoc.cpp
Normal file
61
aoc/dump_aoc.cpp
Normal file
@ -0,0 +1,61 @@
|
||||
/*
|
||||
* Copyright 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <string>
|
||||
#include <android-base/file.h>
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
|
||||
// Format title and content output.
|
||||
void dumpFileContent(const char* title, const char* file_path) {
|
||||
std::string content;
|
||||
printf("------ %s (%s) ------\n", title, file_path);
|
||||
if (android::base::ReadFileToString(file_path, &content)) {
|
||||
printf("%s\n", content.c_str());
|
||||
} else {
|
||||
printf("Unable to read %s\n", file_path);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
void command(const char* title, const char* cmd){
|
||||
printf("------ %s (%s) ------\n", title, cmd);
|
||||
system(cmd);
|
||||
return;
|
||||
}
|
||||
|
||||
// Dump Aoc.
|
||||
int main() {
|
||||
setbuf(stdout, NULL);
|
||||
dumpFileContent("AoC Service Status", "/sys/devices/platform/19000000.aoc/services");
|
||||
dumpFileContent("AoC Restarts", "/sys/devices/platform/19000000.aoc/restart_count");
|
||||
dumpFileContent("AoC Coredumps", "/sys/devices/platform/19000000.aoc/coredump_count");
|
||||
dumpFileContent("AoC ring buf wake", "/sys/devices/platform/19000000.aoc/control/ring_buffer_wakeup");
|
||||
dumpFileContent("AoC host ipc wake", "/sys/devices/platform/19000000.aoc/control/host_ipc_wakeup");
|
||||
dumpFileContent("AoC usf wake", "/sys/devices/platform/19000000.aoc/control/usf_wakeup");
|
||||
dumpFileContent("AoC audio wake", "/sys/devices/platform/19000000.aoc/control/audio_wakeup");
|
||||
dumpFileContent("AoC logging wake", "/sys/devices/platform/19000000.aoc/control/logging_wakeup");
|
||||
dumpFileContent("AoC hotword wake", "/sys/devices/platform/19000000.aoc/control/hotword_wakeup");
|
||||
dumpFileContent("AoC memory exception wake", "/sys/devices/platform/19000000.aoc/control/memory_exception");
|
||||
dumpFileContent("AoC memory votes", "/sys/devices/platform/19000000.aoc/control/memory_votes_a32");
|
||||
dumpFileContent("AoC memory votes", "/sys/devices/platform/19000000.aoc/control/memory_votes_ff1");
|
||||
command("clean AoC buffer","echo ' ' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
|
||||
command("AoC Heap Stats (A32)", "echo 'dbg heap -c 1' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
|
||||
command("AoC Heap Stats (F1)", "echo 'dbg heap -c 2' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
|
||||
command("AoC Heap Stats (HF0)", "echo 'dbg heap -c 3' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
|
||||
command("AoC Heap Stats (HF1)", "echo 'dbg heap -c 4' > /dev/acd-debug; timeout 0.1 cat /dev/acd-debug");
|
||||
return 0;
|
||||
}
|
7
aoc/sepolicy/dump_aoc.te
Normal file
7
aoc/sepolicy/dump_aoc.te
Normal file
@ -0,0 +1,7 @@
|
||||
pixel_bugreport(dump_aoc)
|
||||
allow dump_aoc sysfs_aoc:dir search;
|
||||
allow dump_aoc sysfs_aoc_dumpstate:file r_file_perms;
|
||||
allow dump_aoc aoc_device:chr_file rw_file_perms;
|
||||
allow dump_aoc vendor_shell_exec:file execute_no_trans;
|
||||
allow dump_aoc vendor_toolbox_exec:file execute_no_trans;
|
||||
|
1
aoc/sepolicy/file_contexts
Normal file
1
aoc/sepolicy/file_contexts
Normal file
@ -0,0 +1 @@
|
||||
/vendor/bin/dump/dump_aoc u:object_r:dump_aoc_exec:s0
|
Loading…
x
Reference in New Issue
Block a user