1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
diff --git a/fstab.hikey b/fstab.hikey
index a2458eb..a773725 100644
--- a/fstab.hikey
+++ b/fstab.hikey
@@ -5,7 +5,9 @@
/dev/block/platform/soc/f723d000.dwmmc0/by-name/system /system ext4 ro wait
/dev/block/platform/soc/f723d000.dwmmc0/by-name/system /system squashfs ro wait
+/dev/block/platform/soc/f723d000.dwmmc0/by-name/system /system btrfs ro wait
/dev/block/platform/soc/f723d000.dwmmc0/by-name/cache /cache ext4 discard,noauto_da_alloc,data=ordered,user_xattr,discard,barrier=1 wait
/dev/block/platform/soc/f723d000.dwmmc0/by-name/userdata /data ext4 discard,noauto_da_alloc,data=ordered,user_xattr,discard,barrier=1 wait
+/dev/block/platform/soc/f723d000.dwmmc0/by-name/userdata /data btrfs defaults wait
/devices/platform/soc/f723e000.dwmmc1/mmc_host/mmc* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata
/devices/platform/soc/f72c0000.usb/usb* auto auto defaults voldmanaged=usbdisk:auto,encryptable=userdata
diff --git a/init.hikey.rc b/init.hikey.rc
index bf16d91..e61c22e 100644
--- a/init.hikey.rc
+++ b/init.hikey.rc
@@ -12,6 +12,8 @@ on init
write /proc/sys/kernel/randomize_va_space 0
on fs
+ exec u:r:btrfs:s0 root -- /sbin/btrfs-convert /dev/block/mmcblk0p10
+ exec u:r:btrfs:s0 root -- /sbin/btrfs-convert /dev/block/mmcblk0p9
mount_all /fstab.hikey
setprop ro.crypto.fuse_sdcard false
diff --git a/sepolicy/btrfs.te b/sepolicy/btrfs.te
new file mode 100644
index 0000000..451b085
--- /dev/null
+++ b/sepolicy/btrfs.te
@@ -0,0 +1,4 @@
+type btrfs, domain;
+type btrfs_exec, exec_type, file_type;
+
+init_daemon_domain(btrfs)
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index dc808fa..30eff78 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -6,3 +6,5 @@
/dev/hci_tty u:object_r:hci_attach_dev:s0
/dev/ttyAMA1 u:object_r:hci_attach_dev:s0
/system/bin/uim u:object_r:hci_attach_exec:s0
+/sbin/btrfs-convert u:object_r:btrfs_exec:s0
+/sbin/mkfs.btrfs u:object_r:btrfs_exec:s0
|