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

Commit 30780a73 authored by Luis Hector Chavez's avatar Luis Hector Chavez
Browse files

init.rc: Remount / with MS_REMOUNT|MS_BIND

Since we only want to change the ro flag on / (and leave all other mount
flags alone), this can also be achieved by passing MS_REMOUNT|MS_BIND,
even if the mount is not a bind-mount.

This aims to make running Android within a user namespace easier, since
remounts without the MS_BIND flag are forbidden.

Bug: 73255020
Test: aosp_sailfish still boots
Test: rootfs on / type rootfs (rw,seclabel)
      /dev/root on / type ext4 (ro,seclabel,relatime,data=ordered)
Change-Id: I2f89a8badfc467db47304c9355648e8fd8ad1272
parent 7c6b0242
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -318,8 +318,9 @@ on post-fs
    start hwservicemanager
    start vndservicemanager

    # once everything is setup, no need to modify /
    mount rootfs rootfs / ro remount
    # Once everything is setup, no need to modify /.
    # The bind+ro combination avoids modifying any other mount flags.
    mount rootfs rootfs / remount bind ro
    # Mount shared so changes propagate into child namespaces
    mount rootfs rootfs / shared rec
    # Mount default storage into root namespace