diff --git a/net/sctp/associola.c b/net/sctp/associola.c
index 22c2519..ab3141f 100644
--- a/net/sctp/associola.c
+++ b/net/sctp/associola.c
@@ -666,13 +666,10 @@
 	struct list_head	*pos;
 	struct list_head	*temp;
 	struct sctp_transport	*transport;
-	union sctp_addr tmp;
-
-	flip_to_n(&tmp, addr);
 
 	list_for_each_safe(pos, temp, &asoc->peer.transport_addr_list) {
 		transport = list_entry(pos, struct sctp_transport, transports);
-		if (sctp_cmp_addr_exact(&tmp, &transport->ipaddr)) {
+		if (sctp_cmp_addr_exact(addr, &transport->ipaddr)) {
 			/* Do book keeping for removing the peer and free it. */
 			sctp_assoc_rm_peer(asoc, transport);
 			break;
@@ -1051,7 +1048,7 @@
 	list_for_each_safe(pos, temp, &asoc->peer.transport_addr_list) {
 		trans = list_entry(pos, struct sctp_transport, transports);
 		if (!sctp_assoc_lookup_paddr(new, &trans->ipaddr_h))
-			sctp_assoc_del_peer(asoc, &trans->ipaddr_h);
+			sctp_assoc_del_peer(asoc, &trans->ipaddr);
 	}
 
 	/* If the case is A (association restart), use
diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c
index ee907ea..303830b 100644
--- a/net/sctp/sm_make_chunk.c
+++ b/net/sctp/sm_make_chunk.c
@@ -2463,7 +2463,7 @@
 		if (sctp_cmp_addr_exact(&tmp, &tmp_addr))
 			return SCTP_ERROR_DEL_SRC_IP;
 
-		sctp_assoc_del_peer(asoc, &addr);
+		sctp_assoc_del_peer(asoc, &tmp_addr);
 		break;
 	case SCTP_PARAM_SET_PRIMARY:
 		peer = sctp_assoc_lookup_paddr(asoc, &addr);
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c
index 50d4ccc..a11bd4f 100644
--- a/net/sctp/sm_sideeffect.c
+++ b/net/sctp/sm_sideeffect.c
@@ -835,7 +835,7 @@
 		t = list_entry(pos, struct sctp_transport, transports);
 		if (!sctp_cmp_addr_exact(&t->ipaddr,
 		                         &asoc->peer.primary_addr)) {
-			sctp_assoc_del_peer(asoc, &t->ipaddr_h);
+			sctp_assoc_del_peer(asoc, &t->ipaddr);
 		}
 	}
 
