From: David Teigland <teigland@redhat.com>

Fix potential race in lowcomms.

Signed-off-by: Patrick Caulfield <pcaulfie@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 drivers/dlm/lowcomms.c |    6 +-----
 1 files changed, 1 insertion(+), 5 deletions(-)

diff -puN drivers/dlm/lowcomms.c~dlm-communication-fix-lowcomms-race drivers/dlm/lowcomms.c
--- devel/drivers/dlm/lowcomms.c~dlm-communication-fix-lowcomms-race	2005-07-16 13:35:43.000000000 -0700
+++ devel-akpm/drivers/dlm/lowcomms.c	2005-07-16 13:35:43.000000000 -0700
@@ -1101,8 +1101,8 @@ static void process_output_queue(void)
 	list_for_each_safe(list, temp, &write_nodes) {
 		struct nodeinfo *ni =
 		    list_entry(list, struct nodeinfo, write_list);
-		list_del(&ni->write_list);
 		clear_bit(NI_WRITE_PENDING, &ni->flags);
+		list_del(&ni->write_list);
 
 		spin_unlock_bh(&write_nodes_lock);
 
@@ -1271,11 +1271,7 @@ static int daemons_start(void)
 
 /*
  * This is quite likely to sleep...
- * Temporarily initialise the waitq head so that lowcomms_send_message
- * doesn't crash if it gets called before the thread is fully
- * initialised
  */
-
 int dlm_lowcomms_start(void)
 {
 	int error;
_