diff --git a/fs_mgr/fs_mgr.cpp b/fs_mgr/fs_mgr.cpp index 835a3e7f6..7f41cea83 100644 --- a/fs_mgr/fs_mgr.cpp +++ b/fs_mgr/fs_mgr.cpp @@ -1656,6 +1656,19 @@ MountAllResult fs_mgr_mount_all(Fstab* fstab, int mount_mode) { continue; } } + if (userdata_mounted) { + Fstab mounted_fstab; + if (!ReadFstabFromFile("/proc/mounts", &mounted_fstab)) { + LOG(ERROR) << "Could't load fstab from /proc/mounts , unable to set ro.fstype.data . " + "init.rc actions depending on this prop would not run, boot might fail."; + } else { + for (const auto& entry : mounted_fstab) { + if (entry.mount_point == "/data") { + android::base::SetProperty("ro.fstype.data", entry.fs_type); + } + } + } + } set_type_property(encryptable);