[Ocfs2-commits] khackel commits r2086 - trunk/fs/ocfs2/dlm

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Wed Mar 30 15:01:32 CST 2005


Author: khackel
Signed-off-by: jlbec
Date: 2005-03-30 15:01:30 -0600 (Wed, 30 Mar 2005)
New Revision: 2086

Modified:
   trunk/fs/ocfs2/dlm/dlmast.c
Log:
* ok to assert against ast_list/bast_list being empty, but not
  against the pending flag.  it is possible to have an ast being
  delivered (not on list) but having its ast_pending flag not
  yet cleared.  the check for list_empty will keep more than one
  from getting queued.

Signed-off-by: jlbec



Modified: trunk/fs/ocfs2/dlm/dlmast.c
===================================================================
--- trunk/fs/ocfs2/dlm/dlmast.c	2005-03-30 19:32:19 UTC (rev 2085)
+++ trunk/fs/ocfs2/dlm/dlmast.c	2005-03-30 21:01:30 UTC (rev 2086)
@@ -60,7 +60,8 @@
 
 	assert_spin_locked(&dlm->spinlock);
 	DLM_ASSERT(list_empty(&lock->ast_list));
-	DLM_ASSERT(!lock->ast_pending);
+	if (lock->ast_pending)
+		dlmprintk0("lock has an ast getting flushed right now\n");
 
 	spin_lock(&lock->spinlock);
 	list_add_tail(&lock->ast_list, &dlm->pending_asts);
@@ -90,7 +91,8 @@
 	assert_spin_locked(&dlm->spinlock);
 
 	DLM_ASSERT(list_empty(&lock->bast_list));
-	DLM_ASSERT(!lock->bast_pending);
+	if (lock->bast_pending)
+		dlmprintk0("lock has a bast getting flushed right now\n");
 
 	spin_lock(&lock->spinlock);
 	list_add_tail(&lock->bast_list, &dlm->pending_basts);



More information about the Ocfs2-commits mailing list