Whamcloud - gitweb
LU-3817 llite: Truncate to restore file
[fs/lustre-release.git] / lustre / utils / lhsmtool_posix.c
index c25ed12..60077d8 100644 (file)
@@ -88,7 +88,7 @@ struct options {
 struct options opt = {
        .o_copy_attrs = 1,
        .o_shadow_tree = 1,
-       .o_verbose = LLAPI_MSG_WARN,
+       .o_verbose = LLAPI_MSG_INFO,
        .o_copy_xattrs = 1,
        .o_report_int = REPORT_INTERVAL_DEFAULT,
        .o_chunk_size = ONE_MB,
@@ -583,8 +583,9 @@ static int ct_copy_data(struct hsm_copyaction_private *hcp, const char *src,
 
        errno = 0;
        /* Don't read beyond a given extent */
-       rlen = (hai->hai_extent.length == -1LL) ?
-               src_st.st_size : hai->hai_extent.length;
+       rlen = min(hai->hai_extent.length, src_st.st_size);
+
+       CT_DEBUG("Going to copy "LPU64" bytes %s -> %s\n", rlen, src, dst);
 
        while (wpos < rlen) {
                int chunk = (rlen - wpos > opt.o_chunk_size) ?
@@ -1748,6 +1749,8 @@ static int ct_run(void)
                }
        }
 
+       setbuf(stdout, NULL);
+
        rc = llapi_hsm_copytool_register(&ctdata, opt.o_mnt, 0,
                                         opt.o_archive_cnt, opt.o_archive_id);
        if (rc < 0) {