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

Commit 281f36f5 authored by Dianne Hackborn's avatar Dianne Hackborn Committed by Android (Google) Code Review
Browse files

Merge "Fix issue #18607384: Run fstrim after every system update" into lmp-mr1-dev

parents 38134308 8b22252a
Loading
Loading
Loading
Loading
+26 −17
Original line number Diff line number Diff line
@@ -4539,6 +4539,11 @@ public class PackageManagerService extends IPackageManager.Stub {
        try {
            IMountService ms = PackageHelper.getMountService();
            if (ms != null) {
                final boolean isUpgrade = isUpgrade();
                boolean doTrim = isUpgrade;
                if (doTrim) {
                    Slog.w(TAG, "Running disk maintenance immediately due to system update");
                } else {
                    final long interval = android.provider.Settings.Global.getLong(
                            mContext.getContentResolver(),
                            android.provider.Settings.Global.FSTRIM_MANDATORY_INTERVAL,
@@ -4546,8 +4551,13 @@ public class PackageManagerService extends IPackageManager.Stub {
                    if (interval > 0) {
                        final long timeSinceLast = System.currentTimeMillis() - ms.lastMaintenance();
                        if (timeSinceLast > interval) {
                            doTrim = true;
                            Slog.w(TAG, "No disk maintenance in " + timeSinceLast
                                    + "; running immediately");
                        }
                    }
                }
                if (doTrim) {
                    if (!isFirstBoot()) {
                        try {
                            ActivityManagerNative.getDefault().showBootMessage(
@@ -4558,7 +4568,6 @@ public class PackageManagerService extends IPackageManager.Stub {
                    }
                    ms.runMaintenance();
                }
                }
            } else {
                Slog.e(TAG, "Mount service unavailable!");
            }