Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e832affe authored by Jeff Sharkey's avatar Jeff Sharkey Committed by android-build-merger
Browse files

Merge "Apply non-FBE migration early during boot." into nyc-dev am: 599de361 am: a65e7a6d

am: e12db127

* commit 'e12db127':
  Apply non-FBE migration early during boot.

Change-Id: Icc2a6bc22892996c0379b2a4e6e828a2a27bfbd6
parents d96c51e4 e12db127
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -2684,8 +2684,14 @@ public class PackageManagerService extends IPackageManager.Stub {
            // Prepare storage for system user really early during boot,
            // since core system apps like SettingsProvider and SystemUI
            // can't wait for user to start
            final int storageFlags;
            if (StorageManager.isFileEncryptedNativeOrEmulated()) {
                storageFlags = StorageManager.FLAG_STORAGE_DE;
            } else {
                storageFlags = StorageManager.FLAG_STORAGE_DE | StorageManager.FLAG_STORAGE_CE;
            }
            reconcileAppsDataLI(StorageManager.UUID_PRIVATE_INTERNAL, UserHandle.USER_SYSTEM,
                    StorageManager.FLAG_STORAGE_DE);
                    storageFlags);
            // If this is first boot after an OTA, and a normal boot, then
            // we need to clear code cache directories.
@@ -19140,7 +19146,8 @@ Slog.v(TAG, ":: stepped forward, applying functor at tag " + parser.getName());
        // First look for stale data that doesn't belong, and check if things
        // have changed since we did our last restorecon
        if ((flags & StorageManager.FLAG_STORAGE_CE) != 0) {
            if (!StorageManager.isUserKeyUnlocked(userId)) {
            if (StorageManager.isFileEncryptedNativeOrEmulated()
                    && !StorageManager.isUserKeyUnlocked(userId)) {
                throw new RuntimeException(
                        "Yikes, someone asked us to reconcile CE storage while " + userId
                                + " was still locked; this would have caused massive data loss!");