mirror of https://gitee.com/openkylin/linux.git
RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()'
We should jump to fail3 in order to undo the 'xa_insert_irq()' call. Link: https://lore.kernel.org/r/20190923190746.10964-1-christophe.jaillet@wanadoo.fr Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
parent
e1ee1e62be
commit
9067f2f0b4
|
@ -3381,7 +3381,7 @@ int c4iw_connect(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param)
|
||||||
if (raddr->sin_addr.s_addr == htonl(INADDR_ANY)) {
|
if (raddr->sin_addr.s_addr == htonl(INADDR_ANY)) {
|
||||||
err = pick_local_ipaddrs(dev, cm_id);
|
err = pick_local_ipaddrs(dev, cm_id);
|
||||||
if (err)
|
if (err)
|
||||||
goto fail2;
|
goto fail3;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* find a route */
|
/* find a route */
|
||||||
|
@ -3403,7 +3403,7 @@ int c4iw_connect(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param)
|
||||||
if (ipv6_addr_type(&raddr6->sin6_addr) == IPV6_ADDR_ANY) {
|
if (ipv6_addr_type(&raddr6->sin6_addr) == IPV6_ADDR_ANY) {
|
||||||
err = pick_local_ip6addrs(dev, cm_id);
|
err = pick_local_ip6addrs(dev, cm_id);
|
||||||
if (err)
|
if (err)
|
||||||
goto fail2;
|
goto fail3;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* find a route */
|
/* find a route */
|
||||||
|
|
Loading…
Reference in New Issue