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

Commit 3b7f4b69 authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

Block adoptable storage when using FBE.

For adoptable storage and FBE to coexist we need a new dm-biocrypt
kernel feature which isn't ready yet.  So for now, prevent devices
from being adopted on FBE devices.

Bug: 30770036
Test: none
Change-Id: I51d54d2a8976ed02a03b107545aa094cf68df5d0
parent 5a0bd229
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -1056,6 +1056,10 @@ class MountService extends IMountService.Stub
                        || mForceAdoptable) {
                    flags |= DiskInfo.FLAG_ADOPTABLE;
                }
                // Adoptable storage isn't currently supported on FBE devices
                if (StorageManager.isFileEncryptedNativeOnly()) {
                    flags &= ~DiskInfo.FLAG_ADOPTABLE;
                }
                mDisks.put(id, new DiskInfo(id, flags));
                break;
            }
@@ -1985,6 +1989,11 @@ class MountService extends IMountService.Stub
        }

        if ((mask & StorageManager.DEBUG_FORCE_ADOPTABLE) != 0) {
            if (StorageManager.isFileEncryptedNativeOnly()) {
                throw new IllegalStateException(
                        "Adoptable storage not available on device with native FBE");
            }

            synchronized (mLock) {
                mForceAdoptable = (flags & StorageManager.DEBUG_FORCE_ADOPTABLE) != 0;