[PATCH rdma-core 1/3] srp_daemon/srp_daemon.c: Don't rely on attribute offset, in get_shared_pkeys

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



get_shared_pkeys has been using SubAdmGet rather than SubAdmGetTable since
commit 2ad09524931dbf98d412e1912c1bdbf22f8ac81d
srp_daemon: Work around SM bug over non-default P_Key support

so RMPP is no longer used in response so it's not safe to
rely on AttributeOffset field. Good MAD status is sufficient
to say that valid PathRecord was returned.

Found-by: Honggang LI <honli@xxxxxxxxxx>
using embedded subnet manager running on an Intel True Scale
Edge Switch 12300.

This has been broken since srptools-1.0.1 which was first
release containing commit mentioned above.

Signed-off-by: Hal Rosenstock <hal@xxxxxxxxxxxx>
---
 srp_daemon/srp_daemon.c | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/srp_daemon/srp_daemon.c b/srp_daemon/srp_daemon.c
index 71b5f07..9fb2ecc 100644
--- a/srp_daemon/srp_daemon.c
+++ b/srp_daemon/srp_daemon.c
@@ -1102,7 +1102,6 @@ static int get_shared_pkeys(struct resources *res,
 	struct umad_sa_packet	       *out_sa_mad, *in_sa_mad;
 	struct ib_path_rec	       *path_rec;
 	ssize_t len;
-	int size;
 	int i, num_pkeys = 0;
 	uint16_t pkey;
 	uint16_t local_port_lid = get_port_lid(res->ud_res->ib_ctx,
@@ -1148,14 +1147,6 @@ static int get_shared_pkeys(struct resources *res,
 		if (len < 0)
 			goto err;
 
-		size = ib_get_attr_size(in_sa_mad->attr_offset);
-		if (!size) {
-			if (config->verbose)
-				printf("PathRec Query did not find any targets "
-				       "over P_Key %x\n", pkey);
-			continue;
-		}
-
 		path_rec = (struct ib_path_rec *)in_sa_mad->data;
 		pkeys[num_pkeys++] = be16toh(path_rec->pkey);
 	}
-- 
1.8.2.3

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux