From 2d541f35cd91fb0cd70ee2bbd100765dac66b13a Mon Sep 17 00:00:00 2001 From: SzuWei Lin Date: Mon, 17 Dec 2018 16:15:50 +0800 Subject: [PATCH] Apply skip mounting product and other partitions in GSI Uses skip_mount.cfg for `init` to skip mounting product and product_service paritions in GSI. The patch also removes the un-mount in `init.gsi.rc`. With this patch, a device with flashing GSI will not use the content in product/prodcut_service partitions on the device and will always use the content under /system/product in GSI. The patch also rename the target/product/vndk to target/product/gsi. Bug: 120208657 Bug: 117246558 Test: Boot blueline master/P with flashing aosp_arm64-userdebug Test: /product and /product_service should be symbolic links Change-Id: Idc9c60e5a05b3d90fc4ab64b0ac000571849b19b --- target/product/aosp_arm.mk | 3 ++- target/product/aosp_arm64.mk | 3 ++- target/product/aosp_x86.mk | 3 ++- target/product/aosp_x86_64.mk | 3 ++- target/product/{vndk => gsi}/28.txt | 0 target/product/{vndk => gsi}/Android.mk | 0 target/product/{vndk => gsi}/OWNERS | 0 target/product/{vndk => gsi}/current.txt | 0 target/product/gsi/init.gsi.rc | 3 +++ target/product/{vndk => gsi}/init.legacy-gsi.rc | 0 target/product/{vndk => gsi}/init.vndk-27.rc | 0 target/product/gsi/skip_mount.cfg | 2 ++ target/product/treble_common.mk | 7 ++++--- target/product/vndk/init.gsi.rc | 2 -- 14 files changed, 17 insertions(+), 9 deletions(-) rename target/product/{vndk => gsi}/28.txt (100%) rename target/product/{vndk => gsi}/Android.mk (100%) rename target/product/{vndk => gsi}/OWNERS (100%) rename target/product/{vndk => gsi}/current.txt (100%) create mode 100644 target/product/gsi/init.gsi.rc rename target/product/{vndk => gsi}/init.legacy-gsi.rc (100%) rename target/product/{vndk => gsi}/init.vndk-27.rc (100%) create mode 100644 target/product/gsi/skip_mount.cfg delete mode 100644 target/product/vndk/init.gsi.rc diff --git a/target/product/aosp_arm.mk b/target/product/aosp_arm.mk index 5a6a092c0..98114c15a 100644 --- a/target/product/aosp_arm.mk +++ b/target/product/aosp_arm.mk @@ -40,7 +40,8 @@ PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true # GSI specific tasks on boot PRODUCT_COPY_FILES += \ - build/make/target/product/vndk/init.gsi.rc:system/etc/init/init.gsi.rc + build/make/target/product/gsi/skip_mount.cfg:system/etc/init/config/skip_mount.cfg \ + build/make/target/product/gsi/init.gsi.rc:system/etc/init/init.gsi.rc \ # Support addtional P vendor interface PRODUCT_EXTRA_VNDK_VERSIONS := 28 diff --git a/target/product/aosp_arm64.mk b/target/product/aosp_arm64.mk index 90c159f2f..87e14d7c2 100644 --- a/target/product/aosp_arm64.mk +++ b/target/product/aosp_arm64.mk @@ -56,7 +56,8 @@ PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true # GSI specific tasks on boot PRODUCT_COPY_FILES += \ - build/make/target/product/vndk/init.gsi.rc:system/etc/init/init.gsi.rc + build/make/target/product/gsi/skip_mount.cfg:system/etc/init/config/skip_mount.cfg \ + build/make/target/product/gsi/init.gsi.rc:system/etc/init/init.gsi.rc \ # Support addtional P vendor interface PRODUCT_EXTRA_VNDK_VERSIONS := 28 diff --git a/target/product/aosp_x86.mk b/target/product/aosp_x86.mk index da31e2417..50d735556 100644 --- a/target/product/aosp_x86.mk +++ b/target/product/aosp_x86.mk @@ -40,7 +40,8 @@ PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true # GSI specific tasks on boot PRODUCT_COPY_FILES += \ - build/make/target/product/vndk/init.gsi.rc:system/etc/init/init.gsi.rc + build/make/target/product/gsi/skip_mount.cfg:system/etc/init/config/skip_mount.cfg \ + build/make/target/product/gsi/init.gsi.rc:system/etc/init/init.gsi.rc \ # Support addtional P vendor interface PRODUCT_EXTRA_VNDK_VERSIONS := 28 diff --git a/target/product/aosp_x86_64.mk b/target/product/aosp_x86_64.mk index 4ce40cc71..499831b3c 100644 --- a/target/product/aosp_x86_64.mk +++ b/target/product/aosp_x86_64.mk @@ -56,7 +56,8 @@ PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true # GSI specific tasks on boot PRODUCT_COPY_FILES += \ - build/make/target/product/vndk/init.gsi.rc:system/etc/init/init.gsi.rc + build/make/target/product/gsi/skip_mount.cfg:system/etc/init/config/skip_mount.cfg \ + build/make/target/product/gsi/init.gsi.rc:system/etc/init/init.gsi.rc \ # Support addtional P vendor interface PRODUCT_EXTRA_VNDK_VERSIONS := 28 diff --git a/target/product/vndk/28.txt b/target/product/gsi/28.txt similarity index 100% rename from target/product/vndk/28.txt rename to target/product/gsi/28.txt diff --git a/target/product/vndk/Android.mk b/target/product/gsi/Android.mk similarity index 100% rename from target/product/vndk/Android.mk rename to target/product/gsi/Android.mk diff --git a/target/product/vndk/OWNERS b/target/product/gsi/OWNERS similarity index 100% rename from target/product/vndk/OWNERS rename to target/product/gsi/OWNERS diff --git a/target/product/vndk/current.txt b/target/product/gsi/current.txt similarity index 100% rename from target/product/vndk/current.txt rename to target/product/gsi/current.txt diff --git a/target/product/gsi/init.gsi.rc b/target/product/gsi/init.gsi.rc new file mode 100644 index 000000000..c6faba78d --- /dev/null +++ b/target/product/gsi/init.gsi.rc @@ -0,0 +1,3 @@ +# +# Android init script for GSI required initialization +# diff --git a/target/product/vndk/init.legacy-gsi.rc b/target/product/gsi/init.legacy-gsi.rc similarity index 100% rename from target/product/vndk/init.legacy-gsi.rc rename to target/product/gsi/init.legacy-gsi.rc diff --git a/target/product/vndk/init.vndk-27.rc b/target/product/gsi/init.vndk-27.rc similarity index 100% rename from target/product/vndk/init.vndk-27.rc rename to target/product/gsi/init.vndk-27.rc diff --git a/target/product/gsi/skip_mount.cfg b/target/product/gsi/skip_mount.cfg new file mode 100644 index 000000000..549767edf --- /dev/null +++ b/target/product/gsi/skip_mount.cfg @@ -0,0 +1,2 @@ +/product +/product_services diff --git a/target/product/treble_common.mk b/target/product/treble_common.mk index bbad48451..040802843 100644 --- a/target/product/treble_common.mk +++ b/target/product/treble_common.mk @@ -48,12 +48,13 @@ PRODUCT_COPY_FILES += \ # GSI specific tasks on boot PRODUCT_COPY_FILES += \ - build/make/target/product/vndk/init.gsi.rc:system/etc/init/init.gsi.rc + build/make/target/product/gsi/skip_mount.cfg:system/etc/init/config/skip_mount.cfg \ + build/make/target/product/gsi/init.gsi.rc:system/etc/init/init.gsi.rc \ # Support for the O-MR1 devices PRODUCT_COPY_FILES += \ - build/make/target/product/vndk/init.legacy-gsi.rc:system/etc/init/init.legacy-gsi.rc \ - build/make/target/product/vndk/init.vndk-27.rc:system/etc/init/gsi/init.vndk-27.rc + build/make/target/product/gsi/init.legacy-gsi.rc:system/etc/init/init.legacy-gsi.rc \ + build/make/target/product/gsi/init.vndk-27.rc:system/etc/init/gsi/init.vndk-27.rc # Name space configuration file for non-enforcing VNDK PRODUCT_PACKAGES += \ diff --git a/target/product/vndk/init.gsi.rc b/target/product/vndk/init.gsi.rc deleted file mode 100644 index 695820e87..000000000 --- a/target/product/vndk/init.gsi.rc +++ /dev/null @@ -1,2 +0,0 @@ -on early-init - umount /product # TODO(b/119391482): workaround for /system/product