| From dfd1425efa5f539699ad9ab74e8dd975a0c76e16 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 1 Feb 2019 12:44:53 -0800 |
| Subject: iw_cxgb4: use tos when finding ipv6 routes |
| |
| From: Steve Wise <swise@opengridcomputing.com> |
| |
| [ Upstream commit c8a7eb554a83214c3d8ee5cb322da8c72810d2dc ] |
| |
| When IPv6 support was added, the correct tos was not passed to |
| cxgb_find_route6(). This potentially results in the wrong route entry. |
| |
| Fixes: 830662f6f032 ("RDMA/cxgb4: Add support for active and passive open connection with IPv6 address") |
| Signed-off-by: Steve Wise <swise@opengridcomputing.com> |
| Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/infiniband/hw/cxgb4/cm.c | 5 +++-- |
| 1 file changed, 3 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/infiniband/hw/cxgb4/cm.c b/drivers/infiniband/hw/cxgb4/cm.c |
| index a29fe11d688a5..a04a53acb24ff 100644 |
| --- a/drivers/infiniband/hw/cxgb4/cm.c |
| +++ b/drivers/infiniband/hw/cxgb4/cm.c |
| @@ -2135,7 +2135,8 @@ static int c4iw_reconnect(struct c4iw_ep *ep) |
| laddr6->sin6_addr.s6_addr, |
| raddr6->sin6_addr.s6_addr, |
| laddr6->sin6_port, |
| - raddr6->sin6_port, 0, |
| + raddr6->sin6_port, |
| + ep->com.cm_id->tos, |
| raddr6->sin6_scope_id); |
| iptype = 6; |
| ra = (__u8 *)&raddr6->sin6_addr; |
| @@ -3278,7 +3279,7 @@ int c4iw_connect(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) |
| laddr6->sin6_addr.s6_addr, |
| raddr6->sin6_addr.s6_addr, |
| laddr6->sin6_port, |
| - raddr6->sin6_port, 0, |
| + raddr6->sin6_port, cm_id->tos, |
| raddr6->sin6_scope_id); |
| } |
| if (!ep->dst) { |
| -- |
| 2.20.1 |
| |