Whamcloud - gitweb
- in mds_lov_start_synchronize() if mds_lov_synchronize() thread did not start due...
authoryury <yury>
Thu, 15 Dec 2005 15:01:45 +0000 (15:01 +0000)
committeryury <yury>
Thu, 15 Dec 2005 15:01:45 +0000 (15:01 +0000)
class_export_put(), that causes assert in case export has only one ref as export is still hashed. In fact, there
should be decref for previously made incref to @obd->obd_refcount and this fucntion seems not supposed to do
something else.

lustre/mds/mds_lov.c

index 744ef14..c1e4801 100644 (file)
@@ -556,7 +556,7 @@ int mds_lov_start_synchronize(struct obd_device *obd, struct obd_uuid *uuid,
                 if (rc < 0) {
                         CERROR("%s: error starting mds_lov_synchronize: %d\n",
                                obd->obd_name, rc);
-                        class_export_put(obd->obd_self_export);
+                        class_decref(obd);
                 } else {
                         CDEBUG(D_HA, "%s: mds_lov_synchronize thread: %d\n",
                                obd->obd_name, rc);