Whamcloud - gitweb
LU-6142 uapi: Get rid of lustre_fid typedef
[fs/lustre-release.git] / lustre / utils / liblustreapi_hsm.c
index 345ab1b..486be87 100644 (file)
@@ -57,8 +57,7 @@
 #include <unistd.h>
 #endif
 
-#include <lnet/lnetctl.h>
-#include <lustre/lustre_idl.h>
+#include <linux/lnet/lnetctl.h>
 #include <lustre/lustreapi.h>
 #include "lustreapi_internal.h"
 
@@ -934,7 +933,7 @@ out_err:
  * \param parent_len Destination buffer size.
  * \return 0 on success.
  */
-static int fid_parent(const char *mnt, const lustre_fid *fid, char *parent,
+static int fid_parent(const char *mnt, const struct lu_fid *fid, char *parent,
                      size_t parent_len)
 {
        int              rc;
@@ -1126,12 +1125,18 @@ int llapi_hsm_action_begin(struct hsm_copyaction_private **phcp,
                        goto err_out;
        }
 
+       /* Since remove is atomic there is no need to send an initial
+        * MDS_HSM_PROGRESS RPC. */
+       if (hai->hai_action == HSMA_REMOVE)
+               goto out_log;
+
        rc = ioctl(ct->mnt_fd, LL_IOC_HSM_COPY_START, &hcp->copy);
        if (rc < 0) {
                rc = -errno;
                goto err_out;
        }
 
+out_log:
        llapi_hsm_log_ct_progress(&hcp, hai, CT_START, 0, 0);
 
 ok_out:
@@ -1275,7 +1280,7 @@ int llapi_hsm_action_progress(struct hsm_copyaction_private *hcp,
  * @return error code if the action is not a copy operation.
  */
 int llapi_hsm_action_get_dfid(const struct hsm_copyaction_private *hcp,
-                             lustre_fid *fid)
+                             struct lu_fid *fid)
 {
        const struct hsm_action_item    *hai = &hcp->copy.hc_hai;
 
@@ -1332,7 +1337,7 @@ int llapi_hsm_action_get_fd(const struct hsm_copyaction_private *hcp)
 int llapi_hsm_import(const char *dst, int archive, const struct stat *st,
                     unsigned long long stripe_size, int stripe_offset,
                     int stripe_count, int stripe_pattern, char *pool_name,
-                    lustre_fid *newfid)
+                    struct lu_fid *newfid)
 {
        struct hsm_user_import   hui;
        int                      fd;