]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
staging: lustre: hsm: copy start error should set HP_FLAG_COMPLETED
authorAurelien Degremont <aurelien.degremont@cea.fr>
Tue, 5 Apr 2016 01:36:53 +0000 (21:36 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Apr 2016 03:47:04 +0000 (20:47 -0700)
If an error occurs when initializing a HSM request, in
ll_ioc_copy_start(), the PROGRESS message, sent to coordinator, should
carry the error code but also HP_FLAG_COMPLETED to mark the request as
finished (with error). If not, the Coordinator will ignore this
message and consider the request is still running.

Signed-off-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3685
Reviewed-on: http://review.whamcloud.com/7265
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/llite/dir.c

index eb2e79ec37c06d1fcbaba4a5a562831fcaa6d646..955acd4cdd11ee8b2d8c2f0c89455b8409c0db97 100644 (file)
@@ -958,6 +958,9 @@ static int ll_ioc_copy_start(struct super_block *sb, struct hsm_copy *copy)
        }
 
 progress:
+       /* On error, the request should be considered as completed */
+       if (hpk.hpk_errval > 0)
+               hpk.hpk_flags |= HP_FLAG_COMPLETED;
        rc = obd_iocontrol(LL_IOC_HSM_PROGRESS, sbi->ll_md_exp, sizeof(hpk),
                           &hpk, NULL);