Merge "Load build sysprops early"

This commit is contained in:
Treehugger Robot 2019-01-15 20:28:38 +00:00 committed by Gerrit Code Review
commit 4fc83b1885
4 changed files with 21 additions and 27 deletions

View file

@ -482,9 +482,8 @@ Commands
-f: force installation of the module even if the version of the running kernel -f: force installation of the module even if the version of the running kernel
and the version of the kernel for which the module was compiled do not match. and the version of the kernel for which the module was compiled do not match.
`load_all_props` `load_system_props`
> Loads properties from /system, /vendor, et cetera. > (This action is deprecated and no-op.)
This is included in the default init.rc.
`load_persist_props` `load_persist_props`
> Loads persistent properties when /data has been decrypted. > Loads persistent properties when /data has been decrypted.

View file

@ -972,7 +972,7 @@ static Result<Success> do_load_persist_props(const BuiltinArguments& args) {
} }
static Result<Success> do_load_system_props(const BuiltinArguments& args) { static Result<Success> do_load_system_props(const BuiltinArguments& args) {
load_system_props(); LOG(INFO) << "deprecated action `load_system_props` called.";
return Success(); return Success();
} }

View file

@ -699,22 +699,6 @@ static void update_sys_usb_config() {
} }
} }
void property_load_boot_defaults() {
if (!load_properties_from_file("/system/etc/prop.default", NULL)) {
// Try recovery path
if (!load_properties_from_file("/prop.default", NULL)) {
// Try legacy path
load_properties_from_file("/default.prop", NULL);
}
}
load_properties_from_file("/product/build.prop", NULL);
load_properties_from_file("/product_services/build.prop", NULL);
load_properties_from_file("/odm/default.prop", NULL);
load_properties_from_file("/vendor/default.prop", NULL);
update_sys_usb_config();
}
static void load_override_properties() { static void load_override_properties() {
if (ALLOW_LOCAL_PROP_OVERRIDE) { if (ALLOW_LOCAL_PROP_OVERRIDE) {
load_properties_from_file("/data/local.prop", NULL); load_properties_from_file("/data/local.prop", NULL);
@ -779,12 +763,29 @@ void load_recovery_id_prop() {
close(fd); close(fd);
} }
void load_system_props() { void property_load_boot_defaults() {
// TODO(b/117892318): merge prop.default and build.prop files into one
// TODO(b/122864654): read the prop files from all partitions and then
// resolve the duplication by their origin so that RO and non-RO properties
// have a consistent overriding order.
if (!load_properties_from_file("/system/etc/prop.default", NULL)) {
// Try recovery path
if (!load_properties_from_file("/prop.default", NULL)) {
// Try legacy path
load_properties_from_file("/default.prop", NULL);
}
}
load_properties_from_file("/product/build.prop", NULL);
load_properties_from_file("/product_services/build.prop", NULL);
load_properties_from_file("/odm/default.prop", NULL);
load_properties_from_file("/vendor/default.prop", NULL);
load_properties_from_file("/system/build.prop", NULL); load_properties_from_file("/system/build.prop", NULL);
load_properties_from_file("/odm/build.prop", NULL); load_properties_from_file("/odm/build.prop", NULL);
load_properties_from_file("/vendor/build.prop", NULL); load_properties_from_file("/vendor/build.prop", NULL);
load_properties_from_file("/factory/factory.prop", "ro.*"); load_properties_from_file("/factory/factory.prop", "ro.*");
load_recovery_id_prop(); load_recovery_id_prop();
update_sys_usb_config();
} }
static int SelinuxAuditCallback(void* data, security_class_t /*cls*/, char* buf, size_t len) { static int SelinuxAuditCallback(void* data, security_class_t /*cls*/, char* buf, size_t len) {

View file

@ -346,12 +346,6 @@ on late-init
trigger boot trigger boot
on post-fs on post-fs
# Load properties from
# /system/build.prop,
# /odm/build.prop,
# /vendor/build.prop and
# /factory/factory.prop
load_system_props
start vold start vold
exec - system system -- /system/bin/vdc checkpoint markBootAttempt exec - system system -- /system/bin/vdc checkpoint markBootAttempt