[ofa-general] [PATCH v2] opensm/QoS: fixing RDS handling in QoS policy

Yevgeny Kliteynik kliteyn at dev.mellanox.co.il
Sun Jan 27 02:29:23 PST 2008


Sasha,

Please apply the following patch to ofed_1_3 and master.

Unlike SDP, RDS opens an RC pair of QPs per pair of IPs, so it
has a predefined port number that is included in the service id.

Signed-off-by:  Yevgeny Kliteynik <kliteyn at dev.mellanox.co.il>
---
 opensm/include/opensm/osm_qos_policy.h |    1 +
 opensm/opensm/osm_qos_parser.y         |    4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/opensm/include/opensm/osm_qos_policy.h b/opensm/include/opensm/osm_qos_policy.h
index 82b6258..f5815d8 100644
--- a/opensm/include/opensm/osm_qos_policy.h
+++ b/opensm/include/opensm/osm_qos_policy.h
@@ -59,6 +59,7 @@

 #define OSM_QOS_POLICY_ULP_SDP_SERVICE_ID   0x0000000000010000ULL
 #define OSM_QOS_POLICY_ULP_RDS_SERVICE_ID   0x0000000001060000ULL
+#define OSM_QOS_POLICY_ULP_RDS_PORT         0x48CA
 #define OSM_QOS_POLICY_ULP_ISER_SERVICE_ID  0x0000000001060000ULL
 #define OSM_QOS_POLICY_ULP_ISER_PORT        0x035C

diff --git a/opensm/opensm/osm_qos_parser.y b/opensm/opensm/osm_qos_parser.y
index 8cae5f3..ef97d9f 100644
--- a/opensm/opensm/osm_qos_parser.y
+++ b/opensm/opensm/osm_qos_parser.y
@@ -777,8 +777,8 @@ qos_ulp:            TK_ULP_DEFAULT single_number {
                         uint64_t ** range_arr =
                                (uint64_t **)malloc(sizeof(uint64_t *));
                         range_arr[0] = (uint64_t *)malloc(2*sizeof(uint64_t));
-                        range_arr[0][0] = OSM_QOS_POLICY_ULP_RDS_SERVICE_ID;
-                        range_arr[0][1] = OSM_QOS_POLICY_ULP_RDS_SERVICE_ID + 0xFFFF;
+                        range_arr[0][0] = range_arr[0][1] =
+                           OSM_QOS_POLICY_ULP_RDS_SERVICE_ID + OSM_QOS_POLICY_ULP_RDS_PORT;

                         p_current_qos_match_rule->service_id_range_arr = range_arr;
                         p_current_qos_match_rule->service_id_range_len = 1;
-- 
1.5.1.4




More information about the general mailing list