[ofa-general] [RFC] [PATCH 2/5 v2] ib/sa: add new QoS fields to path record

Or Gerlitz ogerlitz at voltaire.com
Sun Sep 16 02:09:44 PDT 2007


Sean Hefty wrote:
> The QoS annex defines new fields for path records.  Add them to the
> ib_sa for consumers that want to use them.
> 
> Signed-off-by: Sean Hefty <sean.hefty at intel.com>

Reviewed-by: Or Gerlitz <ogerlitz at voltaire.com>

> ---
> 
>  drivers/infiniband/core/sa_query.c |   10 +++-------
>  include/rdma/ib_sa.h               |   11 +++++------
>  2 files changed, 8 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/infiniband/core/sa_query.c b/drivers/infiniband/core/sa_query.c
> index d271bd7..6f56bb5 100644
> --- a/drivers/infiniband/core/sa_query.c
> +++ b/drivers/infiniband/core/sa_query.c
> @@ -123,14 +123,10 @@ static u32 tid;
>  	.field_name          = "sa_path_rec:" #field
>  
>  static const struct ib_field path_rec_table[] = {
> -	{ RESERVED,
> +	{ PATH_REC_FIELD(service_id),
>  	  .offset_words = 0,
>  	  .offset_bits  = 0,
> -	  .size_bits    = 32 },
> -	{ RESERVED,
> -	  .offset_words = 1,
> -	  .offset_bits  = 0,
> -	  .size_bits    = 32 },
> +	  .size_bits    = 64 },
>  	{ PATH_REC_FIELD(dgid),
>  	  .offset_words = 2,
>  	  .offset_bits  = 0,
> @@ -179,7 +175,7 @@ static const struct ib_field path_rec_table[] = {
>  	  .offset_words = 12,
>  	  .offset_bits  = 16,
>  	  .size_bits    = 16 },
> -	{ RESERVED,
> +	{ PATH_REC_FIELD(qos_class),
>  	  .offset_words = 13,
>  	  .offset_bits  = 0,
>  	  .size_bits    = 12 },
> diff --git a/include/rdma/ib_sa.h b/include/rdma/ib_sa.h
> index 5e26b2f..942692b 100644
> --- a/include/rdma/ib_sa.h
> +++ b/include/rdma/ib_sa.h
> @@ -109,8 +109,8 @@ 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 +123,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_QOS_CLASS			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 +134,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 +147,7 @@ struct ib_sa_path_rec {
>  	int          reversible;
>  	u8           numb_path;
>  	__be16       pkey;
> -	/* reserved */
> +	__be16       qos_class;
>  	u8           sl;
>  	u8           mtu_selector;
>  	u8           mtu;
> 
> _______________________________________________
> general mailing list
> general at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
> 
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general





More information about the general mailing list