Эх сурвалжийг харах

cxgb4i: Convert over to dst_neigh_lookup().

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 13 жил өмнө
parent
commit
c473737765

+ 4 - 1
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c

@@ -1142,7 +1142,7 @@ static int init_act_open(struct cxgbi_sock *csk)
 	cxgbi_sock_set_flag(csk, CTPF_HAS_ATID);
 	cxgbi_sock_set_flag(csk, CTPF_HAS_ATID);
 	cxgbi_sock_get(csk);
 	cxgbi_sock_get(csk);
 
 
-	n = dst_get_neighbour_noref(csk->dst);
+	n = dst_neigh_lookup(csk->dst, &csk->daddr.sin_addr.s_addr);
 	if (!n) {
 	if (!n) {
 		pr_err("%s, can't get neighbour of csk->dst.\n", ndev->name);
 		pr_err("%s, can't get neighbour of csk->dst.\n", ndev->name);
 		goto rel_resource;
 		goto rel_resource;
@@ -1182,9 +1182,12 @@ static int init_act_open(struct cxgbi_sock *csk)
 
 
 	cxgbi_sock_set_state(csk, CTP_ACTIVE_OPEN);
 	cxgbi_sock_set_state(csk, CTP_ACTIVE_OPEN);
 	send_act_open_req(csk, skb, csk->l2t);
 	send_act_open_req(csk, skb, csk->l2t);
+	neigh_release(n);
 	return 0;
 	return 0;
 
 
 rel_resource:
 rel_resource:
+	if (n)
+		neigh_release(n);
 	if (skb)
 	if (skb)
 		__kfree_skb(skb);
 		__kfree_skb(skb);
 	return -EINVAL;
 	return -EINVAL;