Loading services/core/java/com/android/server/pm/StagingManager.java +17 −0 Original line number Diff line number Diff line Loading @@ -44,11 +44,13 @@ import android.os.ParcelFileDescriptor; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; import android.os.storage.IStorageManager; import android.util.Slog; import android.util.SparseArray; import android.util.apk.ApkSignatureVerifier; import com.android.internal.annotations.GuardedBy; import com.android.internal.content.PackageHelper; import com.android.internal.os.BackgroundThread; import java.io.File; Loading Loading @@ -253,6 +255,21 @@ public class StagingManager { } } // Make sure we start a filesystem checkpoint on the next boot. try { IStorageManager storageManager = PackageHelper.getStorageManager(); if (storageManager.supportsCheckpoint()) { storageManager.startCheckpoint(1 /* numRetries */); } } catch (RemoteException e) { // While StorageManager lives in the same process, the native implementation // it calls through lives in 'vold'; so, this call can fail if 'vold' isn't // reachable. // Since we can live without filesystem checkpointing, just warn in this case // and continue. Slog.w(TAG, "Could not start filesystem checkpoint."); } session.setStagedSessionReady(); if (sessionContainsApex(session) && !mApexManager.markStagedSessionReady(session.sessionId)) { Loading Loading
services/core/java/com/android/server/pm/StagingManager.java +17 −0 Original line number Diff line number Diff line Loading @@ -44,11 +44,13 @@ import android.os.ParcelFileDescriptor; import android.os.PowerManager; import android.os.RemoteException; import android.os.ServiceManager; import android.os.storage.IStorageManager; import android.util.Slog; import android.util.SparseArray; import android.util.apk.ApkSignatureVerifier; import com.android.internal.annotations.GuardedBy; import com.android.internal.content.PackageHelper; import com.android.internal.os.BackgroundThread; import java.io.File; Loading Loading @@ -253,6 +255,21 @@ public class StagingManager { } } // Make sure we start a filesystem checkpoint on the next boot. try { IStorageManager storageManager = PackageHelper.getStorageManager(); if (storageManager.supportsCheckpoint()) { storageManager.startCheckpoint(1 /* numRetries */); } } catch (RemoteException e) { // While StorageManager lives in the same process, the native implementation // it calls through lives in 'vold'; so, this call can fail if 'vold' isn't // reachable. // Since we can live without filesystem checkpointing, just warn in this case // and continue. Slog.w(TAG, "Could not start filesystem checkpoint."); } session.setStagedSessionReady(); if (sessionContainsApex(session) && !mApexManager.markStagedSessionReady(session.sessionId)) { Loading