Use the filesystem manager to mount and check filesystems

fs_mgr reads /fstab.<device> to determine what to mount and what to
check, and removes the details from the init.<device>.rc file.

Change-Id: I8692570f5f89e43cf484aab09000e4ed669c25b9
diff --git a/device_base.mk b/device_base.mk
index 08e8cdc..968e09d 100644
--- a/device_base.mk
+++ b/device_base.mk
@@ -50,6 +50,7 @@
 PRODUCT_COPY_FILES += \
 	device/samsung/crespo/init.herring.rc:root/init.herring.rc \
 	device/samsung/crespo/init.herring.usb.rc:root/init.herring.usb.rc \
+	device/samsung/crespo/fstab.herring:root/fstab.herring \
 	device/samsung/crespo/ueventd.herring.rc:root/ueventd.herring.rc
 
 # Prebuilt kl and kcm keymaps
diff --git a/fstab.herring b/fstab.herring
new file mode 100644
index 0000000..0eca316
--- /dev/null
+++ b/fstab.herring
@@ -0,0 +1,9 @@
+# Android fstab file.
+#<src>                                                  <mnt_point>         <type>    <mnt_flags and options>                               <fs_mgr_flags>
+# The filesystem that contains the filesystem checker binary (typically /system) cannot
+# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
+
+
+/dev/block/platform/s3c-sdhci.0/by-name/system          /system             ext4      ro                                                    wait
+/dev/block/platform/s3c-sdhci.0/by-name/userdata        /data               ext4      noatime,nosuid,nodev,nomblk_io_submit,errors=panic    wait,encryptable=/efs/userdata_footer
+
diff --git a/init.herring.rc b/init.herring.rc
index 2895a7c..4a1ee38 100755
--- a/init.herring.rc
+++ b/init.herring.rc
@@ -8,8 +8,6 @@
     setprop ro.radio.noril yes
     setprop ro.bt.bdaddr_path "/efs/bluetooth/bt_addr"
 
-    setprop ro.crypto.keyfile.userdata /efs/userdata_footer
-
 # fake some battery state
     setprop status.battery.state Slow
     setprop status.battery.level 5
@@ -37,8 +35,7 @@
     mount yaffs2 mtd@efs /efs noatime nosuid nodev
     chmod 770 /efs/bluetooth
     chmod 770 /efs/imei
-    mount ext4 /dev/block/platform/s3c-sdhci.0/by-name/system /system wait ro
-    mount ext4 /dev/block/platform/s3c-sdhci.0/by-name/userdata /data wait noatime nosuid nodev nomblk_io_submit
+    mount_all /fstab.herring
 
     export EXTERNAL_STORAGE /storage/sdcard0
     mkdir /storage 0050 system sdcard_r