QoS support according to the proposed LWG2 QoS Annex.

Signed-off-by: Michael S. Tsirkin <[EMAIL PROTECTED]>

---

Index: linux-2.6/drivers/infiniband/core/sa_query.c
===================================================================
--- linux-2.6.orig/drivers/infiniband/core/sa_query.c
+++ linux-2.6/drivers/infiniband/core/sa_query.c
@@ -122,14 +122,10 @@ static u32 tid;
        .field_name          = "sa_path_rec:" #field
 
 static const struct ib_field path_rec_table[] = {
-       { RESERVED,
-         .offset_words = 0,
-         .offset_bits  = 0,
-         .size_bits    = 32 },
-       { RESERVED,
-         .offset_words = 1,
+       { PATH_REC_FIELD(service_id),
+         .offset_words = 2,
          .offset_bits  = 0,
-         .size_bits    = 32 },
+         .size_bits    = 64 },
        { PATH_REC_FIELD(dgid),
          .offset_words = 2,
          .offset_bits  = 0,
@@ -178,7 +174,7 @@ static const struct ib_field path_rec_ta
          .offset_words = 12,
          .offset_bits  = 16,
          .size_bits    = 16 },
-       { RESERVED,
+       { PATH_REC_FIELD(priority),
          .offset_words = 13,
          .offset_bits  = 0,
          .size_bits    = 12 },
Index: linux-2.6/include/rdma/ib_sa.h
===================================================================
--- linux-2.6.orig/include/rdma/ib_sa.h
+++ linux-2.6/include/rdma/ib_sa.h
@@ -109,8 +109,9 @@ enum ib_sa_selector {
  * Reserved rows are indicated with comments to help maintainability.
  */
 
-/* reserved:                                                            0 */
-/* reserved:                                                            1 */
+#define IB_SA_PATH_REC_SERVICE_ID                     (IB_SA_COMP_MASK( 0) | \
+                                                       IB_SA_COMP_MASK( 1))
+
 #define IB_SA_PATH_REC_DGID                            IB_SA_COMP_MASK( 2)
 #define IB_SA_PATH_REC_SGID                            IB_SA_COMP_MASK( 3)
 #define IB_SA_PATH_REC_DLID                            IB_SA_COMP_MASK( 4)
@@ -123,7 +124,7 @@ enum ib_sa_selector {
 #define IB_SA_PATH_REC_REVERSIBLE                      IB_SA_COMP_MASK(11)
 #define IB_SA_PATH_REC_NUMB_PATH                       IB_SA_COMP_MASK(12)
 #define IB_SA_PATH_REC_PKEY                            IB_SA_COMP_MASK(13)
-/* reserved:                                                           14 */
+#define IB_SA_PATH_REC_PRIORITY                                
IB_SA_COMP_MASK(14)
 #define IB_SA_PATH_REC_SL                              IB_SA_COMP_MASK(15)
 #define IB_SA_PATH_REC_MTU_SELECTOR                    IB_SA_COMP_MASK(16)
 #define IB_SA_PATH_REC_MTU                             IB_SA_COMP_MASK(17)
@@ -134,8 +135,7 @@ enum ib_sa_selector {
 #define IB_SA_PATH_REC_PREFERENCE                      IB_SA_COMP_MASK(22)
 
 struct ib_sa_path_rec {
-       /* reserved */
-       /* reserved */
+       __be64       service_id;
        union ib_gid dgid;
        union ib_gid sgid;
        __be16       dlid;
@@ -148,7 +148,7 @@ struct ib_sa_path_rec {
        int          reversible;
        u8           numb_path;
        __be16       pkey;
-       /* reserved */
+       __be16       priority;
        u8           sl;
        u8           mtu_selector;
        u8           mtu;

-- 
MST

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

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

Reply via email to