Signed-off-by: Hal Rosenstock <[email protected]>
---
opensm/opensm/osm_sa.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/opensm/opensm/osm_sa.c b/opensm/opensm/osm_sa.c
index 0aca81f..8325632 100644
--- a/opensm/opensm/osm_sa.c
+++ b/opensm/opensm/osm_sa.c
@@ -3,6 +3,7 @@
* Copyright (c) 2002-2010 Mellanox Technologies LTD. All rights reserved.
* Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
* Copyright (c) 2008 Xsigo Systems Inc. All rights reserved.
+ * Copyright (c) 2010 HNR Consulting. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
@@ -454,8 +455,15 @@ void osm_sa_respond(osm_sa_t *sa, osm_madw_t *madw, size_t
attr_size,
/* C15-0.1.5 - always return SM_Key = 0 (table 185 p 884) */
resp_sa_mad->sm_key = 0;
- /* Fill in the offset (paylen will be done by the rmpp SAR) */
- resp_sa_mad->attr_offset = num_rec ? ib_get_attr_offset(attr_size) : 0;
+#ifdef DUAL_SIDED_RMPP
+ if (resp_sa_mad->method == IB_MAD_METHOD_GETTABLE_RESP ||
+ resp_sa_mad->method == IB_MAD_METHOD_GETMULTI_RESP) {
+#else
+ if (resp_sa_mad->method == IB_MAD_METHOD_GETTABLE_RESP) {
+#endif
+ /* Fill in the offset (paylen will be done by the rmpp SAR) */
+ resp_sa_mad->attr_offset = num_rec ?
ib_get_attr_offset(attr_size) : 0;
+ }
p = ib_sa_mad_get_payload_ptr(resp_sa_mad);
--
1.5.6.4
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html