From bc9b847e0fe95662e1569f863ebcd059dbf6348f Mon Sep 17 00:00:00 2001 From: Shikha Malhotra Date: Wed, 29 Dec 2021 16:26:18 +0000 Subject: [PATCH] Adding project_id ranges for internal app and cache folders. Test: atest StorageHostTest Test: atest installd/tests/installd_service_test.cpp Change-Id: I4dbda6f2f0d74cb4f4890555742b26c81a6b0146 --- fs_mgr/fs_mgr.cpp | 4 ++-- fs_mgr/fs_mgr_format.cpp | 3 +-- libcutils/include/private/android_projectid_config.h | 10 ++++++++++ 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/fs_mgr/fs_mgr.cpp b/fs_mgr/fs_mgr.cpp index 8ce961b8e..d74bb5b66 100644 --- a/fs_mgr/fs_mgr.cpp +++ b/fs_mgr/fs_mgr.cpp @@ -364,8 +364,8 @@ static void tune_quota(const std::string& blk_device, const FstabEntry& entry, const struct ext4_super_block* sb, int* fs_stat) { bool has_quota = (sb->s_feature_ro_compat & cpu_to_le32(EXT4_FEATURE_RO_COMPAT_QUOTA)) != 0; bool want_quota = entry.fs_mgr_flags.quota; - bool want_projid = android::base::GetBoolProperty("external_storage.projid.enabled", false); - + // Enable projid support by default + bool want_projid = true; if (has_quota == want_quota) { return; } diff --git a/fs_mgr/fs_mgr_format.cpp b/fs_mgr/fs_mgr_format.cpp index bb49873d0..6f59ed36e 100644 --- a/fs_mgr/fs_mgr_format.cpp +++ b/fs_mgr/fs_mgr_format.cpp @@ -156,11 +156,10 @@ int fs_mgr_do_format(const FstabEntry& entry) { LERROR << __FUNCTION__ << ": Format " << entry.blk_device << " as '" << entry.fs_type << "'"; bool needs_casefold = false; - bool needs_projid = false; + bool needs_projid = true; if (entry.mount_point == "/data") { needs_casefold = android::base::GetBoolProperty("external_storage.casefold.enabled", false); - needs_projid = android::base::GetBoolProperty("external_storage.projid.enabled", false); } if (entry.fs_type == "f2fs") { diff --git a/libcutils/include/private/android_projectid_config.h b/libcutils/include/private/android_projectid_config.h index 7ef385405..56a39a625 100644 --- a/libcutils/include/private/android_projectid_config.h +++ b/libcutils/include/private/android_projectid_config.h @@ -49,3 +49,13 @@ #define PROJECT_ID_EXT_OBB_START 40000 /* End of project IDs for apps to mark external OBB data. */ #define PROJECT_ID_EXT_OBB_END 49999 + +/* Start of project IDs for apps to mark internal app data. */ +#define PROJECT_ID_APP_START 50000 +/* End of project IDs for apps to mark internal app data. */ +#define PROJECT_ID_APP_END 59999 + +/* Start of project IDs for apps to mark internal app cache data. */ +#define PROJECT_ID_APP_CACHE_START 60000 +/* End of project IDs for apps to mark internal app cache data. */ +#define PROJECT_ID_APP_CACHE_END 69999