X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Futils%2Fliblustreapi_hsm.c;h=c4b5437b3f4e3b1252060045999e4a3703a4b1e8;hp=4d32588f6b9ac773a0159f8dfe023f19aa74418a;hb=848f9e20320cb7c01eaf7f1b5c27f5efd54e4818;hpb=4ac1f95a3b5311d40947b4b7d8bb5035c81af318 diff --git a/lustre/utils/liblustreapi_hsm.c b/lustre/utils/liblustreapi_hsm.c index 4d32588..c4b5437 100644 --- a/lustre/utils/liblustreapi_hsm.c +++ b/lustre/utils/liblustreapi_hsm.c @@ -128,18 +128,18 @@ int llapi_hsm_copytool_start(struct hsm_copytool_private **priv, char *fsname, ct->kuc.lk_data = ct->archives; rc = root_ioctl(ct->fsname, LL_IOC_HSM_CT_START, &(ct->kuc), NULL, WANT_ERROR); - /* ignore if it was already registered on coordinator */ - if (rc == -EEXIST) - rc = 0; /* Only the kernel reference keeps the write side open */ close(ct->kuc.lk_wfd); ct->kuc.lk_wfd = 0; if (rc < 0) - goto out_err; + goto out_kuc; *priv = ct; return 0; +out_kuc: + /* cleanup the kuc channel */ + libcfs_ukuc_stop(&ct->kuc); out_err: if (ct->fsname) free(ct->fsname);