diff --git a/fs/dlm/config.c b/fs/dlm/config.c
index 87df9616..8855305 100644
--- a/fs/dlm/config.c
+++ b/fs/dlm/config.c
@@ -17,6 +17,7 @@
 #include <net/sock.h>
 
 #include "config.h"
+#include "lowcomms.h"
 
 /*
  * /config/dlm/<cluster>/spaces/<space>/nodes/<node>/nodeid
@@ -429,6 +430,7 @@
 	struct comm *cm = to_comm(i);
 	if (local_comm == cm)
 		local_comm = NULL;
+	dlm_lowcomms_close(cm->nodeid);
 	while (cm->addr_count--)
 		kfree(cm->addr[cm->addr_count]);
 	config_item_put(i);
diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c
index 09b0124..cdd168e 100644
--- a/fs/dlm/lowcomms.c
+++ b/fs/dlm/lowcomms.c
@@ -1063,6 +1063,27 @@
 	}
 }
 
+int dlm_lowcomms_close(int nodeid)
+{
+	struct nodeinfo *ni;
+
+	ni = nodeid2nodeinfo(nodeid, 0);
+	if (!ni)
+		return -1;
+
+	spin_lock(&ni->lock);
+	if (ni->assoc_id) {
+		ni->assoc_id = 0;
+		/* Don't send shutdown here, sctp will just queue it
+		   till the node comes back up! */
+	}
+	spin_unlock(&ni->lock);
+
+	clean_one_writequeue(ni);
+	clear_bit(NI_INIT_PENDING, &ni->flags);
+	return 0;
+}
+
 static int write_list_empty(void)
 {
 	int status;
diff --git a/fs/dlm/lowcomms.h b/fs/dlm/lowcomms.h
index 3af8035..6c04bb0 100644
--- a/fs/dlm/lowcomms.h
+++ b/fs/dlm/lowcomms.h
@@ -18,6 +18,7 @@
 void dlm_lowcomms_exit(void);
 int dlm_lowcomms_start(void);
 void dlm_lowcomms_stop(void);
+int dlm_lowcomms_close(int nodeid);
 void *dlm_lowcomms_get_buffer(int nodeid, int len, int allocation, char **ppc);
 void dlm_lowcomms_commit_buffer(void *mh);
 
diff --git a/fs/dlm/member.c b/fs/dlm/member.c
index 926cd0c..cd0c51e 100644
--- a/fs/dlm/member.c
+++ b/fs/dlm/member.c
@@ -15,7 +15,6 @@
 #include "member.h"
 #include "recoverd.h"
 #include "recover.h"
-#include "lowcomms.h"
 #include "rcom.h"
 #include "config.h"
 
