From: yury Date: Wed, 12 Nov 2008 11:59:33 +0000 (+0000) Subject: b=17037 X-Git-Tag: v1_7_140~1^83~2 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=ceb313ec63bfc2f2959e290f5b5c535d94b097aa;p=fs%2Flustre-release.git b=17037 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. --- diff --git a/lustre/include/lustre_log.h b/lustre/include/lustre_log.h index cc69ec6..3216981 100644 --- a/lustre/include/lustre_log.h +++ b/lustre/include/lustre_log.h @@ -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