add vendor_init.te and enable ro.init.subcontexts_enabled

Bug: 62875318
Test: boot sailfish with vendor_init
Change-Id: I3a51e893fa96b1936e6d43f19dfba219a67477a1
diff --git a/device-common.mk b/device-common.mk
index 71d5600..084bcd4 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -643,3 +643,6 @@
 # Marlin/Sailfish kernel doesn't have HEH filename encryption
 PRODUCT_PROPERTY_OVERRIDES += \
     ro.crypto.volume.filenames_mode=aes-256-cts
+
+PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
+    ro.init.subcontexts_enabled=true
diff --git a/sepolicy/init.te b/sepolicy/init.te
index f4b0582..df9d146 100644
--- a/sepolicy/init.te
+++ b/sepolicy/init.te
@@ -10,6 +10,3 @@
 allow init firmware_file:dir mounton;
 allow init persist_file:dir mounton;
 allow init userdata_block_device:blk_file { write };
-
-allow init debugfs_sps:dir search;
-allow init debugfs_sps:file w_file_perms;
diff --git a/sepolicy/vendor_init.te b/sepolicy/vendor_init.te
new file mode 100644
index 0000000..9079736
--- /dev/null
+++ b/sepolicy/vendor_init.te
@@ -0,0 +1,4 @@
+# symlink /sdcard to backing block
+
+allow vendor_init debugfs_sps:dir search;
+allow vendor_init debugfs_sps:file w_file_perms;