Whamcloud - gitweb
LU-4629 mdc: fix issue found by Klocwork Insight tool 87/9387/4
authorDmitry Eremin <dmitry.eremin@intel.com>
Tue, 25 Feb 2014 18:41:26 +0000 (22:41 +0400)
committerOleg Drokin <oleg.drokin@intel.com>
Tue, 25 Mar 2014 18:49:01 +0000 (18:49 +0000)
Pointer 'mod' checked for NULL at line 160 may be dereferenced at line 208.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I130de2f5b2066b8797e2454d4a603f53b3ffcbef
Reviewed-on: http://review.whamcloud.com/9387
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/mdc/mdc_reint.c

index cb09729..a233011 100644 (file)
@@ -203,12 +203,13 @@ int mdc_setattr(struct obd_export *exp, struct md_op_data *op_data,
                 rc = 0;
         }
         *request = req;
-        if (rc && req->rq_commit_cb) {
-                /* Put an extra reference on \var mod on error case. */
-                obd_mod_put(*mod);
-                req->rq_commit_cb(req);
-        }
-        RETURN(rc);
+       if (rc && req->rq_commit_cb) {
+               /* Put an extra reference on \var mod on error case. */
+               if (mod != NULL && *mod != NULL)
+                       obd_mod_put(*mod);
+               req->rq_commit_cb(req);
+       }
+       RETURN(rc);
 }
 
 int mdc_create(struct obd_export *exp, struct md_op_data *op_data,