mirror of
https://github.com/Ysurac/openmptcprouter.git
synced 2025-02-15 04:42:02 +00:00
49 lines
1.8 KiB
Diff
49 lines
1.8 KiB
Diff
From 8440cdc77577e5177153e121229cff73c0ba4e6c Mon Sep 17 00:00:00 2001
|
|
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
Date: Wed, 7 Aug 2019 18:44:12 +0200
|
|
Subject: [PATCH 778/826] IB: directly cast the sockaddr union to aockaddr
|
|
|
|
Like commit 641114d2af31 ("RDMA: Directly cast the sockaddr union to
|
|
sockaddr") we need to quiet gcc 9 from warning about this crazy union.
|
|
That commit did not fix all of the warnings in 4.19 and older kernels
|
|
because the logic in roce_resolve_route_from_path() was rewritten
|
|
between 4.19 and 5.2 when that change happened.
|
|
|
|
Cc: Jason Gunthorpe <jgg@mellanox.com>
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
---
|
|
drivers/infiniband/core/sa_query.c | 9 ++++-----
|
|
1 file changed, 4 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/drivers/infiniband/core/sa_query.c b/drivers/infiniband/core/sa_query.c
|
|
index 7b794a14d6e8..8be082edf986 100644
|
|
--- a/drivers/infiniband/core/sa_query.c
|
|
+++ b/drivers/infiniband/core/sa_query.c
|
|
@@ -1232,7 +1232,6 @@ static int roce_resolve_route_from_path(struct sa_path_rec *rec,
|
|
{
|
|
struct rdma_dev_addr dev_addr = {};
|
|
union {
|
|
- struct sockaddr _sockaddr;
|
|
struct sockaddr_in _sockaddr_in;
|
|
struct sockaddr_in6 _sockaddr_in6;
|
|
} sgid_addr, dgid_addr;
|
|
@@ -1249,12 +1248,12 @@ static int roce_resolve_route_from_path(struct sa_path_rec *rec,
|
|
*/
|
|
dev_addr.net = &init_net;
|
|
|
|
- rdma_gid2ip(&sgid_addr._sockaddr, &rec->sgid);
|
|
- rdma_gid2ip(&dgid_addr._sockaddr, &rec->dgid);
|
|
+ rdma_gid2ip((struct sockaddr *)&sgid_addr, &rec->sgid);
|
|
+ rdma_gid2ip((struct sockaddr *)&dgid_addr, &rec->dgid);
|
|
|
|
/* validate the route */
|
|
- ret = rdma_resolve_ip_route(&sgid_addr._sockaddr,
|
|
- &dgid_addr._sockaddr, &dev_addr);
|
|
+ ret = rdma_resolve_ip_route((struct sockaddr *)&sgid_addr,
|
|
+ (struct sockaddr *)&dgid_addr, &dev_addr);
|
|
if (ret)
|
|
return ret;
|
|
|
|
--
|
|
2.22.0
|
|
|