Whamcloud - gitweb
- fixed calling wrong upcall which caused oops.
authoryury <yury>
Fri, 6 Oct 2006 13:59:13 +0000 (13:59 +0000)
committeryury <yury>
Fri, 6 Oct 2006 13:59:13 +0000 (13:59 +0000)
lustre/mds/mds_lov.c

index fab513b..890579f 100644 (file)
@@ -718,13 +718,15 @@ static int __mds_lov_synchronize(void *data)
                        obd->obd_name, rc);
                 GOTO(out, rc);
         }
-        if (obd->obd_upcall.onu_owner) {
-                /*This is an hack for mds_notify->mdd_notify,
-                 *When the mds obd in mdd is removed,
-                 *This hack should be removed*/
-                 LASSERT(obd->obd_upcall.onu_upcall != NULL);
-                 rc = obd->obd_upcall.onu_upcall(NULL, NULL, 0,
-                                        obd->obd_upcall.onu_owner);
+        
+        if (watched->obd_upcall.onu_owner) {
+                /*
+                 * This is an hack for mds_notify->mdd_notify, When the mds obd
+                 * in mdd is removed, This hack should be removed.
+                 */
+                 LASSERT(watched->obd_upcall.onu_upcall != NULL);
+                 rc = watched->obd_upcall.onu_upcall(NULL, NULL, 0,
+                                                     watched->obd_upcall.onu_owner);
         }
         EXIT;
 out: