Whamcloud - gitweb
b=17037
authoryury <yury>
Wed, 12 Nov 2008 11:59:33 +0000 (11:59 +0000)
committeryury <yury>
Wed, 12 Nov 2008 11:59:33 +0000 (11:59 +0000)
r=tappro,wangdi

- fixes ost cleanup issue due to missed llcd_put() in the case ost does not receive disconnect from mds;

- do not sleep on hanging llcd. Instead assert on it _after_ stopping recov_thread's ptlrpcd which should kill any remeining llcds;

- fixes and cleanups, comments.

lustre/include/lustre_log.h

index cc69ec6..3216981 100644 (file)
@@ -279,17 +279,17 @@ struct llog_commit_master {
          */
         atomic_t                   lcm_count;
         /**
-         * Ptlrpc requests set. All cancel rpcs go via this request set.
-         */
-        struct ptlrpc_request_set *lcm_set;
-        /**
          * Thread control structure. Used for control commit thread.
          */
         struct ptlrpcd_ctl         lcm_pc;
-        /**
-         * Busy resources waitq
+        /*
+         * Lock protecting list of llcds.
          */
-        cfs_waitq_t                lcm_waitq;
+        spinlock_t                 lcm_lock;
+        /*
+         * Llcds in flight for debugging purposes.
+         */
+        struct list_head           lcm_llcds;
         /**
          * Commit thread name buffer. Only used for thread start.
          */
@@ -313,6 +313,10 @@ struct llog_canceld_ctxt {
          * left in llcd to cookie comming cookies.
          */
         int                        llcd_size;
+        /*
+         * Link to lcm llcds list.
+         */
+        struct list_head           llcd_list;
         /**
          * Current llcd size while gathering cookies. This should not be
          * more than ->llcd_size. Used for determining if we need to