Since this field is used for storing pkey index and not pkey value
rename it to pkey_ix in order to avoid confusions.

Signed-off-by: Sasha Khapyorsky <[EMAIL PROTECTED]>
---
 opensm/include/opensm/osm_madw.h           |    2 +-
 opensm/libvendor/osm_vendor_al.c           |    2 +-
 opensm/libvendor/osm_vendor_ibumad.c       |    4 ++--
 opensm/libvendor/osm_vendor_mlx_ibmgt.c    |    2 +-
 opensm/libvendor/osm_vendor_mlx_sa.c       |    2 +-
 opensm/libvendor/osm_vendor_mlx_sim.c      |    8 +-------
 opensm/libvendor/osm_vendor_mlx_ts.c       |    6 +-----
 opensm/libvendor/osm_vendor_mlx_ts_anafa.c |    8 +-------
 opensm/libvendor/osm_vendor_mtl.c          |    2 +-
 opensm/libvendor/osm_vendor_ts.c           |    8 +-------
 opensm/libvendor/osm_vendor_umadt.c        |    5 ++---
 opensm/opensm/osm_perfmgr.c                |    2 +-
 opensm/opensm/osm_sa.c                     |    9 +++++----
 13 files changed, 19 insertions(+), 41 deletions(-)

diff --git a/opensm/include/opensm/osm_madw.h b/opensm/include/opensm/osm_madw.h
index 31707ad..f957a99 100644
--- a/opensm/include/opensm/osm_madw.h
+++ b/opensm/include/opensm/osm_madw.h
@@ -385,7 +385,7 @@ typedef struct _osm_mad_addr {
                struct _gsi {
                        ib_net32_t remote_qp;
                        ib_net32_t remote_qkey;
-                       ib_net16_t pkey;
+                       uint16_t pkey_ix;
                        uint8_t service_level;
                        boolean_t global_route;
                        ib_grh_t grh_info;
diff --git a/opensm/libvendor/osm_vendor_al.c b/opensm/libvendor/osm_vendor_al.c
index 34ecf30..7d497c5 100644
--- a/opensm/libvendor/osm_vendor_al.c
+++ b/opensm/libvendor/osm_vendor_al.c
@@ -294,7 +294,7 @@ __osm_al_rcv_callback(IN void *mad_svc_context, IN 
ib_mad_element_t * p_elem)
        } else {
                mad_addr.addr_type.gsi.remote_qp = p_elem->remote_qp;
                mad_addr.addr_type.gsi.remote_qkey = p_elem->remote_qkey;
-               mad_addr.addr_type.gsi.pkey = p_elem->pkey_index;
+               mad_addr.addr_type.gsi.pkey_ix = p_elem->pkey_index;
                mad_addr.addr_type.gsi.service_level = p_elem->remote_sl;
                mad_addr.addr_type.gsi.global_route = FALSE;
        }
diff --git a/opensm/libvendor/osm_vendor_ibumad.c 
b/opensm/libvendor/osm_vendor_ibumad.c
index 8d1f070..38c6628 100644
--- a/opensm/libvendor/osm_vendor_ibumad.c
+++ b/opensm/libvendor/osm_vendor_ibumad.c
@@ -215,7 +215,7 @@ ib_mad_addr_conv(ib_user_mad_t * umad, osm_mad_addr_t * 
osm_mad_addr,
 
        osm_mad_addr->addr_type.gsi.remote_qp = ib_mad_addr->qpn;
        osm_mad_addr->addr_type.gsi.remote_qkey = ib_mad_addr->qkey;
-       osm_mad_addr->addr_type.gsi.pkey = umad_get_pkey(umad);
+       osm_mad_addr->addr_type.gsi.pkey_ix = umad_get_pkey(umad);
        osm_mad_addr->addr_type.gsi.service_level = ib_mad_addr->sl;
        osm_mad_addr->addr_type.gsi.global_route = 0;   /* FIXME: handle GRH */
        memset(&osm_mad_addr->addr_type.gsi.grh_info, 0,
@@ -1047,7 +1047,7 @@ osm_vendor_send(IN osm_bind_handle_t h_bind,
                          p_mad_addr->addr_type.gsi.service_level,
                          IB_QP1_WELL_KNOWN_Q_KEY);
        umad_set_grh(p_vw->umad, 0);    /* FIXME: GRH support */
-       umad_set_pkey(p_vw->umad, p_mad_addr->addr_type.gsi.pkey);
+       umad_set_pkey(p_vw->umad, p_mad_addr->addr_type.gsi.pkey_ix);
        if (ib_class_is_rmpp(p_mad->mgmt_class)) {      /* RMPP GSI classes     
FIXME: no GRH */
                if (!ib_rmpp_is_flag_set((ib_rmpp_mad_t *) p_sa,
                                         IB_RMPP_FLAG_ACTIVE)) {
diff --git a/opensm/libvendor/osm_vendor_mlx_ibmgt.c 
b/opensm/libvendor/osm_vendor_mlx_ibmgt.c
index 3841356..b3d72f7 100644
--- a/opensm/libvendor/osm_vendor_mlx_ibmgt.c
+++ b/opensm/libvendor/osm_vendor_mlx_ibmgt.c
@@ -720,7 +720,7 @@ __osmv_IBMGT_rcv_desc_to_osm_addr(IN IB_MGT_mad_rcv_desc_t 
* p_rcv_desc,
                /*  since this does not seem reasonable to me I simply use the 
default */
                /*  There is a TAVOR limitation that only one P_KEY is 
supported per  */
                /*  QP - so QP1 must use IB_DEFAULT_PKEY */
-               p_mad_addr->addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+               p_mad_addr->addr_type.gsi.pkey_ix = 0;
                p_mad_addr->addr_type.gsi.service_level = p_rcv_desc->sl;
 
                p_mad_addr->addr_type.gsi.global_route = p_rcv_desc->grh_flag;
diff --git a/opensm/libvendor/osm_vendor_mlx_sa.c 
b/opensm/libvendor/osm_vendor_mlx_sa.c
index bf44413..aeb8542 100644
--- a/opensm/libvendor/osm_vendor_mlx_sa.c
+++ b/opensm/libvendor/osm_vendor_mlx_sa.c
@@ -533,7 +533,7 @@ __osmv_send_sa_req(IN osmv_sa_bind_info_t * p_bind,
        p_madw->mad_addr.addr_type.smi.source_lid = cl_hton16(p_bind->lid);
        p_madw->mad_addr.addr_type.gsi.remote_qp = CL_HTON32(1);
        p_madw->mad_addr.addr_type.gsi.remote_qkey = IB_QP1_WELL_KNOWN_Q_KEY;
-       p_madw->mad_addr.addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+       p_madw->mad_addr.addr_type.gsi.pkey_ix = 0;
        p_madw->resp_expected = TRUE;
        p_madw->fail_msg = CL_DISP_MSGID_NONE;
 
diff --git a/opensm/libvendor/osm_vendor_mlx_sim.c 
b/opensm/libvendor/osm_vendor_mlx_sim.c
index fb5687b..c700759 100644
--- a/opensm/libvendor/osm_vendor_mlx_sim.c
+++ b/opensm/libvendor/osm_vendor_mlx_sim.c
@@ -382,13 +382,7 @@ __osmv_ibms_mad_addr_to_osm_addr(IN osm_vendor_t const 
*p_vend,
                p_osm_addr->addr_type.gsi.remote_qp =
                    cl_ntoh32(p_ibms_addr->sqpn);
                p_osm_addr->addr_type.gsi.remote_qkey = IB_QP1_WELL_KNOWN_Q_KEY;
-               /*  we do have the p_osm_addr->pkey_ix but how to get the PKey 
by index ? */
-               /*  the only way seems to be to use VAPI_query_hca_pkey_tbl and 
obtain */
-               /*  the full PKey table - than go by the index. */
-               /*  since this does not seem reasonable to me I simply use the 
default */
-               /*  There is a TAVOR limitation that only one P_KEY is 
supported per */
-               /*  QP - so QP1 must use IB_DEFAULT_PKEY */
-               p_osm_addr->addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+               p_osm_addr->addr_type.gsi.pkey_ix = p_ibms_addr->pkey_index;
                p_osm_addr->addr_type.gsi.service_level = p_ibms_addr->sl;
 
                p_osm_addr->addr_type.gsi.global_route = FALSE;
diff --git a/opensm/libvendor/osm_vendor_mlx_ts.c 
b/opensm/libvendor/osm_vendor_mlx_ts.c
index 7bddeed..f5ca136 100644
--- a/opensm/libvendor/osm_vendor_mlx_ts.c
+++ b/opensm/libvendor/osm_vendor_mlx_ts.c
@@ -443,13 +443,9 @@ __osmv_TOPSPIN_mad_addr_to_osm_addr(IN osm_vendor_t const 
*p_vend,
                /* GSI */
                p_mad_addr->addr_type.gsi.remote_qp = cl_ntoh32(p_mad->sqpn);
                p_mad_addr->addr_type.gsi.remote_qkey = IB_QP1_WELL_KNOWN_Q_KEY;
-               /*  we do have the p_mad_addr->pkey_ix but how to get the PKey 
by index ? */
-               /*  the only way seems to be to use VAPI_query_hca_pkey_tbl and 
obtain */
-               /*  the full PKey table - than go by the index. */
-               /*  since this does not seem reasonable to me I simply use the 
default */
                /*  There is a TAVOR limitation that only one P_KEY is 
supported per */
                /*  QP - so QP1 must use IB_DEFAULT_PKEY */
-               p_mad_addr->addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+               p_mad_addr->addr_type.gsi.pkey_ix = p_mad->pkey_index;
                p_mad_addr->addr_type.gsi.service_level = p_mad->sl;
 
                p_mad_addr->addr_type.gsi.global_route = FALSE;
diff --git a/opensm/libvendor/osm_vendor_mlx_ts_anafa.c 
b/opensm/libvendor/osm_vendor_mlx_ts_anafa.c
index 8bb3a36..9cbe1b6 100644
--- a/opensm/libvendor/osm_vendor_mlx_ts_anafa.c
+++ b/opensm/libvendor/osm_vendor_mlx_ts_anafa.c
@@ -393,13 +393,7 @@ __osmv_TOPSPIN_ANAFA_mad_addr_to_osm_addr(IN osm_vendor_t 
const *p_vend,
                /* GSI */
                p_mad_addr->addr_type.gsi.remote_qp = p_mad->sqpn;
                p_mad_addr->addr_type.gsi.remote_qkey = IB_QP1_WELL_KNOWN_Q_KEY;
-               /*  we do have the p_mad_addr->pkey_ix but how to get the PKey 
by index ? */
-               /*  the only way seems to be to use VAPI_query_hca_pkey_tbl and 
obtain */
-               /*  the full PKey table - than go by the index. */
-               /*  since this does not seem reasonable to me I simply use the 
default */
-               /*  There is a TAVOR limitation that only one P_KEY is 
supported per */
-               /*  QP - so QP1 must use IB_DEFAULT_PKEY */
-               p_mad_addr->addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+               p_mad_addr->addr_type.gsi.pkey_ix = p_mad->pkey_index;
                p_mad_addr->addr_type.gsi.service_level = p_mad->sl;
 
                p_mad_addr->addr_type.gsi.global_route = FALSE;
diff --git a/opensm/libvendor/osm_vendor_mtl.c 
b/opensm/libvendor/osm_vendor_mtl.c
index 8b919e4..d8f6715 100644
--- a/opensm/libvendor/osm_vendor_mtl.c
+++ b/opensm/libvendor/osm_vendor_mtl.c
@@ -114,7 +114,7 @@ __osm_mtl_conv_ibmgt_rcv_desc_to_osm_addr(IN osm_vendor_t * 
const p_vend,
                /*  since this does not seem reasonable to me I simply use the 
default */
                /*  There is a TAVOR limitation that only one P_KEY is 
supported per  */
                /*  QP - so QP1 must use IB_DEFAULT_PKEY */
-               p_mad_addr->addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+               p_mad_addr->addr_type.gsi.pkey_ix = 0;
                p_mad_addr->addr_type.gsi.service_level = p_rcv_desc->sl;
 
                p_mad_addr->addr_type.gsi.global_route = p_rcv_desc->grh_flag;
diff --git a/opensm/libvendor/osm_vendor_ts.c b/opensm/libvendor/osm_vendor_ts.c
index 0dad230..365d609 100644
--- a/opensm/libvendor/osm_vendor_ts.c
+++ b/opensm/libvendor/osm_vendor_ts.c
@@ -96,13 +96,7 @@ __osm_ts_conv_mad_rcv_desc_to_osm_addr(IN osm_vendor_t * 
const p_vend,
                /* GSI */
                p_mad_addr->addr_type.gsi.remote_qp = p_mad->sqpn;
                p_mad_addr->addr_type.gsi.remote_qkey = IB_QP1_WELL_KNOWN_Q_KEY;
-               /*  we do have the p_mad_addr->pkey_ix but how to get the PKey 
by index ? */
-               /*  the only way seems to be to use VAPI_query_hca_pkey_tbl and 
obtain */
-               /*  the full PKey table - than go by the index. */
-               /*  since this does not seem reasonable to me I simply use the 
default */
-               /*  There is a TAVOR limitation that only one P_KEY is 
supported per */
-               /*  QP - so QP1 must use IB_DEFAULT_PKEY */
-               p_mad_addr->addr_type.gsi.pkey = IB_DEFAULT_PKEY;
+               p_mad_addr->addr_type.gsi.pkey_ix = p_mad->pkey_index;
                p_mad_addr->addr_type.gsi.service_level = 0;    /*  HACK no way 
to know */
 
                p_mad_addr->addr_type.gsi.global_route = FALSE; /*  HACK no way 
to know */
diff --git a/opensm/libvendor/osm_vendor_umadt.c 
b/opensm/libvendor/osm_vendor_umadt.c
index e761452..b68d6c1 100644
--- a/opensm/libvendor/osm_vendor_umadt.c
+++ b/opensm/libvendor/osm_vendor_umadt.c
@@ -549,7 +549,7 @@ osm_vendor_send(IN osm_bind_handle_t h_bind,
                    p_mad_addr->addr_type.gsi.remote_qp;
                destAddr.AddrType.Gsi.RemoteQkey =
                    p_mad_addr->addr_type.gsi.remote_qkey;
-               destAddr.AddrType.Gsi.PKey = p_mad_addr->addr_type.gsi.pkey;
+               destAddr.AddrType.Gsi.PKey = OSM_DEFAULT_PKEY;
                destAddr.AddrType.Gsi.ServiceLevel =
                    p_mad_addr->addr_type.gsi.service_level;
                destAddr.AddrType.Gsi.GlobalRoute =
@@ -962,8 +962,7 @@ void __mad_recv_processor(IN void *context)
                            pRecvCmp->AddressInfo.AddrType.Gsi.RemoteQpNumber;
                        osm_mad_addr.addr_type.gsi.remote_qkey =
                            pRecvCmp->AddressInfo.AddrType.Gsi.RemoteQkey;
-                       osm_mad_addr.addr_type.gsi.pkey =
-                           pRecvCmp->AddressInfo.AddrType.Gsi.PKey;
+                       osm_mad_addr.addr_type.gsi.pkey_ix = 0;
                        osm_mad_addr.addr_type.gsi.service_level =
                            pRecvCmp->AddressInfo.AddrType.Gsi.ServiceLevel;
                        osm_mad_addr.addr_type.gsi.global_route =
diff --git a/opensm/opensm/osm_perfmgr.c b/opensm/opensm/osm_perfmgr.c
index 66d919d..860a20d 100644
--- a/opensm/opensm/osm_perfmgr.c
+++ b/opensm/opensm/osm_perfmgr.c
@@ -399,7 +399,7 @@ osm_perfmgr_send_pc_mad(osm_perfmgr_t * perfmgr, ib_net16_t 
dest_lid,
        p_madw->mad_addr.addr_type.gsi.remote_qkey =
            cl_hton32(IB_QP1_WELL_KNOWN_Q_KEY);
        /* FIXME what about other partitions */
-       p_madw->mad_addr.addr_type.gsi.pkey = 0;
+       p_madw->mad_addr.addr_type.gsi.pkey_ix = 0;
        p_madw->mad_addr.addr_type.gsi.service_level = 0;
        p_madw->mad_addr.addr_type.gsi.global_route = FALSE;
        p_madw->resp_expected = TRUE;
diff --git a/opensm/opensm/osm_sa.c b/opensm/opensm/osm_sa.c
index 740fef5..c286259 100644
--- a/opensm/opensm/osm_sa.c
+++ b/opensm/opensm/osm_sa.c
@@ -442,7 +442,7 @@ static void sa_dump_one_inform(cl_list_item_t * 
p_list_item, void *cxt)
                " qpn_resp_time_val=0x%x"
                " node_type=0x%06x"
                " rep_addr: lid=0x%04x path_bits=0x%02x static_rate=0x%02x"
-               " remote_qp=0x%08x remote_qkey=0x%08x pkey=0x%04x sl=0x%02x"
+               " remote_qp=0x%08x remote_qkey=0x%08x pkey_ix=0x%04x sl=0x%02x"
                "\n\n",
                cl_ntoh64(p_iir->subscriber_gid.unicast.prefix),
                cl_ntoh64(p_iir->subscriber_gid.unicast.interface_id),
@@ -462,7 +462,7 @@ static void sa_dump_one_inform(cl_list_item_t * 
p_list_item, void *cxt)
                p_infr->report_addr.static_rate,
                cl_ntoh32(p_infr->report_addr.addr_type.gsi.remote_qp),
                cl_ntoh32(p_infr->report_addr.addr_type.gsi.remote_qkey),
-               cl_ntoh16(p_infr->report_addr.addr_type.gsi.pkey),
+               p_infr->report_addr.addr_type.gsi.pkey_ix,
                p_infr->report_addr.addr_type.gsi.service_level);
 }
 
@@ -886,6 +886,7 @@ int osm_sa_db_file_load(osm_opensm_t * p_osm)
                } else if (!strncmp(p, "InformInfo Record:", 18)) {
                        ib_inform_info_record_t i_rec;
                        osm_mad_addr_t rep_addr;
+                       ib_net16_t val16;
 
                        p_mgrp = NULL;
                        memset(&i_rec, 0, sizeof(i_rec));
@@ -931,8 +932,8 @@ int osm_sa_db_file_load(osm_opensm_t * p_osm)
                                    &rep_addr.addr_type.gsi.remote_qp);
                        PARSE_AHEAD(p, net32, " remote_qkey=0x",
                                    &rep_addr.addr_type.gsi.remote_qkey);
-                       PARSE_AHEAD(p, net16, " pkey=0x",
-                                   &rep_addr.addr_type.gsi.pkey);
+                       PARSE_AHEAD(p, net16, " pkey_ix=0x", &val16);
+                       rep_addr.addr_type.gsi.pkey_ix = cl_ntoh16(val16);
                        PARSE_AHEAD(p, net8, " sl=0x",
                                    &rep_addr.addr_type.gsi.service_level);
 
-- 
1.5.4.rc2.38.gd6da3

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to