From 262892227cfc4b7437608001243381f59c0129f8 Mon Sep 17 00:00:00 2001 From: Adam Shih Date: Fri, 23 Sep 2022 10:54:11 +0800 Subject: [PATCH] dump f2fs in gs-common Bug: 248143736 Test: adb bugreport Change-Id: Ifcd0b3aaa017d106530c58a1ce2b56d77af1b12d --- storage/Android.bp | 10 ++++++++++ storage/dump_storage.sh | 10 ++++++++++ storage/sepolicy/dump_storage.te | 13 +++++++++++++ storage/sepolicy/file.te | 1 + storage/sepolicy/file_contexts | 1 + storage/sepolicy/genfs_contexts | 1 + storage/storage.mk | 3 +++ 7 files changed, 39 insertions(+) create mode 100644 storage/Android.bp create mode 100644 storage/dump_storage.sh create mode 100644 storage/sepolicy/dump_storage.te create mode 100644 storage/sepolicy/file.te create mode 100644 storage/sepolicy/file_contexts create mode 100644 storage/sepolicy/genfs_contexts create mode 100644 storage/storage.mk diff --git a/storage/Android.bp b/storage/Android.bp new file mode 100644 index 0000000..54e097e --- /dev/null +++ b/storage/Android.bp @@ -0,0 +1,10 @@ +package { + default_applicable_licenses: ["Android-Apache-2.0"], +} + +sh_binary { + name: "dump_storage.sh", + src: "dump_storage.sh", + vendor: true, + sub_dir: "dump", +} diff --git a/storage/dump_storage.sh b/storage/dump_storage.sh new file mode 100644 index 0000000..378d58b --- /dev/null +++ b/storage/dump_storage.sh @@ -0,0 +1,10 @@ +#!/vendor/bin/sh +# F2FS +echo "--- F2FS status---" +cat "/sys/kernel/debug/f2fs/status" +echo "\n--- F2FS fsck ---" +cat "/dev/fscklogs/fsck" +echo "\n--- F2FS - fsck time (ms) ---" +getprop ro.boottime.init.fsck.data +echo "\n--- F2FS - checkpoint=disable time (ms) ---" +getprop ro.boottime.init.mount.data diff --git a/storage/sepolicy/dump_storage.te b/storage/sepolicy/dump_storage.te new file mode 100644 index 0000000..314fa78 --- /dev/null +++ b/storage/sepolicy/dump_storage.te @@ -0,0 +1,13 @@ +pixel_bugreport(dump_storage) + +allow dump_storage vendor_toolbox_exec:file execute_no_trans; + +userdebug_or_eng(` + allow dump_storage debugfs_f2fs:dir r_dir_perms; + allow dump_storage debugfs_f2fs:file r_file_perms; +') + +get_prop(dump_storage, boottime_public_prop) + +dontaudit dump_storage debugfs_f2fs:dir r_dir_perms; +dontaudit dump_storage debugfs_f2fs:file r_file_perms; diff --git a/storage/sepolicy/file.te b/storage/sepolicy/file.te new file mode 100644 index 0000000..64b6b4e --- /dev/null +++ b/storage/sepolicy/file.te @@ -0,0 +1 @@ +type debugfs_f2fs, debugfs_type, fs_type; diff --git a/storage/sepolicy/file_contexts b/storage/sepolicy/file_contexts new file mode 100644 index 0000000..eda4cf7 --- /dev/null +++ b/storage/sepolicy/file_contexts @@ -0,0 +1 @@ +/vendor/bin/dump/dump_storage\.sh u:object_r:dump_storage_exec:s0 diff --git a/storage/sepolicy/genfs_contexts b/storage/sepolicy/genfs_contexts new file mode 100644 index 0000000..1a27ec4 --- /dev/null +++ b/storage/sepolicy/genfs_contexts @@ -0,0 +1 @@ +genfscon debugfs /f2fs u:object_r:debugfs_f2fs:s0 diff --git a/storage/storage.mk b/storage/storage.mk new file mode 100644 index 0000000..5542ac8 --- /dev/null +++ b/storage/storage.mk @@ -0,0 +1,3 @@ +BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/storage/sepolicy + +PRODUCT_PACKAGES += dump_storage.sh