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