From de21de7a420e5b946757f5abefb6e1dd6f1db2b1 Mon Sep 17 00:00:00 2001 From: Jaekyun Seok Date: Tue, 17 Jan 2017 14:33:55 +0900 Subject: [PATCH] Load default/build props from each partition The following files will be loaded additionally. - /odm/default.prop and /vendor/default.prop for default props. - /odm/build.prop for build props. The props files must follow the following priority order. - /default.prop > /odm/default.prop > /vendor/default.prop - /system/build.prop > /odm/build.prop > /vendor/buid.prop Test: tested default/build prop files with enabling early mount, but didn't test files of odm partition because odm partition doesn't exist now. Bug: 34116668 Change-Id: I946d076dae38f2288865dd986fb16d801d4abcc0 --- init/property_service.cpp | 3 +++ libcutils/fs_config.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/init/property_service.cpp b/init/property_service.cpp index 498a5a103..72fcb5b80 100644 --- a/init/property_service.cpp +++ b/init/property_service.cpp @@ -439,6 +439,8 @@ static void load_persistent_properties() { void property_load_boot_defaults() { load_properties_from_file(PROP_PATH_RAMDISK_DEFAULT, NULL); + load_properties_from_file(PROP_PATH_ODM_DEFAULT, NULL); + load_properties_from_file(PROP_PATH_VENDOR_DEFAULT, NULL); } static void load_override_properties() { @@ -501,6 +503,7 @@ void load_recovery_id_prop() { void load_system_props() { load_properties_from_file(PROP_PATH_SYSTEM_BUILD, NULL); + load_properties_from_file(PROP_PATH_ODM_BUILD, NULL); load_properties_from_file(PROP_PATH_VENDOR_BUILD, NULL); load_properties_from_file(PROP_PATH_FACTORY, "ro.*"); load_recovery_id_prop(); diff --git a/libcutils/fs_config.c b/libcutils/fs_config.c index f43f1e6e7..43635e899 100644 --- a/libcutils/fs_config.c +++ b/libcutils/fs_config.c @@ -194,7 +194,10 @@ static const struct fs_path_config android_files[] = { { 00640, AID_ROOT, AID_SHELL, 0, "fstab.*" }, { 00600, AID_ROOT, AID_ROOT, 0, "system/build.prop" }, { 00600, AID_ROOT, AID_ROOT, 0, "vendor/build.prop" }, + { 00600, AID_ROOT, AID_ROOT, 0, "odm/build.prop" }, { 00600, AID_ROOT, AID_ROOT, 0, "default.prop" }, + { 00600, AID_ROOT, AID_ROOT, 0, "vendor/default.prop" }, + { 00600, AID_ROOT, AID_ROOT, 0, "odm/default.prop" }, { 00644, AID_ROOT, AID_ROOT, 0, 0 }, };