staging/lustre/llite: check return value for obd_set_info_async
authorYang Sheng <yang.sheng@intel.com>
Wed, 24 Aug 2016 15:11:54 +0000 (11:11 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 Sep 2016 15:25:46 +0000 (17:25 +0200)
The return value is ignored in client_common_fill_super.
Restore to check it and error out.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-on: http://review.whamcloud.com/21125
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-8360
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/llite/llite_lib.c

index 72ff7c4..1ff788e 100644 (file)
@@ -498,11 +498,21 @@ static int client_common_fill_super(struct super_block *sb, char *md, char *dt,
        err = obd_set_info_async(NULL, sbi->ll_dt_exp, sizeof(KEY_CHECKSUM),
                                 KEY_CHECKSUM, sizeof(checksum), &checksum,
                                 NULL);
+       if (err) {
+               CERROR("%s: Set checksum failed: rc = %d\n",
+                      sbi->ll_dt_exp->exp_obd->obd_name, err);
+               goto out_root;
+       }
        cl_sb_init(sb);
 
        err = obd_set_info_async(NULL, sbi->ll_dt_exp, sizeof(KEY_CACHE_SET),
                                 KEY_CACHE_SET, sizeof(*sbi->ll_cache),
                                 sbi->ll_cache, NULL);
+       if (err) {
+               CERROR("%s: Set cache_set failed: rc = %d\n",
+                      sbi->ll_dt_exp->exp_obd->obd_name, err);
+               goto out_root;
+       }
 
        sb->s_root = d_make_root(root);
        if (!sb->s_root) {