core: Ensure kernel and initramfs are put into place with fdatasync()

Via a new libgsystem API.
This commit is contained in:
Colin Walters 2013-01-04 19:32:26 -05:00
parent 47bd290065
commit c9a840c659
2 changed files with 3 additions and 5 deletions

@ -1 +1 @@
Subproject commit 6c736d9309d5ffbc60ed0a58e21f0f8ad609ba10
Subproject commit ce441a7a7bd987265588674a11d62965e81bdf94

View File

@ -157,9 +157,7 @@ setup_kernel (OtAdminUpdateKernel *self,
prefix = g_strndup (kernel_name, release - kernel_name);
self->kernel_path = ot_gfile_get_child_strconcat (self->boot_ostree_dir, prefix, "-", self->release, NULL);
if (!g_file_copy (src_kernel_path, self->kernel_path,
G_FILE_COPY_OVERWRITE | G_FILE_COPY_ALL_METADATA | G_FILE_COPY_NOFOLLOW_SYMLINKS,
cancellable, NULL, NULL, error))
if (!gs_file_linkcopy_sync_data (src_kernel_path, self->kernel_path, cancellable, error))
goto out;
g_print ("ostadmin: Deploying kernel %s\n", gs_file_get_path_cached (self->kernel_path));
@ -258,7 +256,7 @@ update_initramfs (OtAdminUpdateKernel *self,
goto out;
}
if (!g_file_copy (initramfs_tmp_file, initramfs_file, 0, cancellable, NULL, NULL, error))
if (!gs_file_linkcopy_sync_data (initramfs_tmp_file, initramfs_file, cancellable, error))
goto out;
g_print ("Created: %s\n", gs_file_get_path_cached (initramfs_file));