Merge "Use fsync instead of sync during first boot"
diff --git a/cppreopts/cppreopts.rc b/cppreopts/cppreopts.rc
index 812b4ce..60bd66c 100644
--- a/cppreopts/cppreopts.rc
+++ b/cppreopts/cppreopts.rc
@@ -16,6 +16,9 @@
     oneshot
     disabled
     user root
+    priority -20
+    ioprio rt 0
+    writepid /dev/cpuset/foreground/tasks
     capabilities
 
 # Post install is above Treble VINTF, because it runs some utilities from
diff --git a/cppreopts/cppreopts.sh b/cppreopts/cppreopts.sh
old mode 100644
new mode 100755
index a3545e1..3416e67
--- a/cppreopts/cppreopts.sh
+++ b/cppreopts/cppreopts.sh
@@ -28,11 +28,12 @@
     log -p w -t cppreopts "Unable to copy file ${source_file} to ${temp_dest_name}!"
   else
     log -p i -t cppreopts "Copied file from ${source_file} to ${temp_dest_name}"
-    sync
+    fsync ${temp_dest_name}
     if ! mv ${temp_dest_name} ${dest_name} ; then
       log -p w -t cppreopts "Unable to rename temporary file from ${temp_dest_name} to ${dest_name}"
       rm ${temp_dest_name} || log -p w -t cppreopts "Unable to remove temporary file ${temp_dest_name}"
     else
+      fsync ${dest_name}
       log -p i -t cppreopts "Renamed temporary file from ${temp_dest_name} to ${dest_name}"
     fi
   fi