>   int copy_file(const char *src, const char *dst)
 >   {
 >      /* Start a file copy */
 >      int cookie = copyfile(src, dst, 0);
 >
 >      /* Async case? */
 >      if (cookie > 0) {
 >              int ret;
 >
 >              while ((ret = copyfile_ctrl(cookie, COPYFILE_WAIT)) > 0)
 >                      /* nothing */;
 >
 >              /* Error handling is shared for async/sync */
 >              cookie = ret;
 >      }
 >      if (cookie < 0) {
 >              perror("copyfile failed");
 >              return -1;
 >      }

I guess one bit of semantics to figure out is what happens if copyfile()
does the async case but then copyfile_ctrl() returns an error halfway
through... is the state of the dest file just undefined?

 - R.

_______________________________________________
Ocfs2-devel mailing list
[email protected]
http://oss.oracle.com/mailman/listinfo/ocfs2-devel

Reply via email to