[PATCH] IB/mthca: fix static rate returned by mthca_ah_query
authorJack Morgenstein <jackm@mellanox.co.il>
Fri, 14 Jul 2006 07:23:50 +0000 (00:23 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 15 Jul 2006 04:53:50 +0000 (21:53 -0700)
mthca_ah_query returs the static rate of the address handle in internal mthc
format.  fix it to use rate encoding from enum ib_rate, which is what users
expect.

Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il>
Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Cc: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/infiniband/hw/mthca/mthca_av.c

index b12aa03be25115a1198e7178ffb5720066e20f27..e215041b2db9cb7cedd3f4616370659cf1a0dd28 100644 (file)
@@ -303,9 +303,10 @@ int mthca_ah_query(struct ib_ah *ibah, struct ib_ah_attr *attr)
        memset(attr, 0, sizeof *attr);
        attr->dlid          = be16_to_cpu(ah->av->dlid);
        attr->sl            = be32_to_cpu(ah->av->sl_tclass_flowlabel) >> 28;
-       attr->static_rate   = ah->av->msg_sr & 0x7;
-       attr->src_path_bits = ah->av->g_slid & 0x7F;
        attr->port_num      = be32_to_cpu(ah->av->port_pd) >> 24;
+       attr->static_rate   = mthca_rate_to_ib(dev, ah->av->msg_sr & 0x7,
+                                              attr->port_num);
+       attr->src_path_bits = ah->av->g_slid & 0x7F;
        attr->ah_flags      = mthca_ah_grh_present(ah) ? IB_AH_GRH : 0;
 
        if (attr->ah_flags) {