diff -Nru linux-2.4.20/net/ipv4/netfilter/ip_conntrack_core.c linux-2.4.20-pom2patch/net/ipv4/netfilter/ip_conntrack_core.c
--- linux-2.4.20/net/ipv4/netfilter/ip_conntrack_core.c	2003-05-02 12:59:51.000000000 -0500
+++ linux-2.4.20-pom2patch/net/ipv4/netfilter/ip_conntrack_core.c	2003-05-02 13:00:22.000000000 -0500
@@ -280,6 +280,8 @@
 		 * the un-established ones only */
 		if (exp->sibling) {
 			DEBUGP("remove_expectations: skipping established %p of %p\n", exp->sibling, ct);
+			/* Indicate that this expectations parent is dead */
+			exp->expectant = NULL;
 			continue;
 		}
 
@@ -331,6 +333,9 @@
 		ip_conntrack_destroyed(ct);
 
 	WRITE_LOCK(&ip_conntrack_lock);
+	/* Delete us from our own list to prevent corruption later */
+	list_del(&ct->sibling_list);
+
 	/* Delete our master expectation */
 	if (ct->master) {
 		/* can't call __unexpect_related here,
