Whamcloud - gitweb
LU-3634 llapi: Fix returned value of llapi_hsm_copy_start/end. 09/7109/2
authorAurelien Degremont <aurelien.degremont@cea.fr>
Mon, 22 Jul 2013 11:57:27 +0000 (13:57 +0200)
committerOleg Drokin <oleg.drokin@intel.com>
Fri, 26 Jul 2013 21:28:54 +0000 (21:28 +0000)
Both function were doing a ioctl and were returning ioctl()
return code instead of returning errno.

Signed-off-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Change-Id: Ibd4c6f5188bb50e7fa8875e2d4fa3442c2c69888
Reviewed-on: http://review.whamcloud.com/7109
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/utils/liblustreapi_hsm.c

index c4b5437..7274b07 100644 (file)
@@ -289,6 +289,8 @@ int llapi_hsm_copy_start(char *mnt, struct hsm_copy *copy,
                return rc;
 
        rc = ioctl(fd, LL_IOC_HSM_COPY_START, copy);
+       /* If error, return errno value */
+       rc = rc ? -errno : 0;
        close(fd);
 
        return rc;
@@ -344,6 +346,8 @@ int llapi_hsm_copy_end(char *mnt, struct hsm_copy *copy,
                goto out_free;
 
        rc = ioctl(fd, LL_IOC_HSM_COPY_END, copy);
+       /* If error, return errno value */
+       rc = rc ? -errno : 0;
        close(fd);
 
 out_free: