[IBAL, MT23108, MTHCA] Fix MAD response for cached attributes
authorftillier <ftillier@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Wed, 6 Sep 2006 18:18:03 +0000 (18:18 +0000)
committerftillier <ftillier@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Wed, 6 Sep 2006 18:18:03 +0000 (18:18 +0000)
to use GET_RESP as the method.

Submitted by: Anatoly Lesinko (anatolyl@voltaire.com)

git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@482 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

core/al/kernel/al_smi.c
hw/mt23108/kernel/hca_smp.c
hw/mthca/kernel/hca_smp.c

index 2ebced7..0a32e4d 100644 (file)
@@ -1,6 +1,7 @@
 /*\r
  * Copyright (c) 2005 SilverStorm Technologies.  All rights reserved.\r
  * Copyright (c) 1996-2003 Intel Corporation. All rights reserved. \r
+ * Copyright (c) 2006 Voltaire Corporation.  All rights reserved.\r
  *\r
  * This software is available to you under the OpenIB.org BSD license\r
  * below:\r
@@ -1551,7 +1552,7 @@ process_node_info(
        {\r
                p_smp = (ib_smp_t*)p_mad_resp->p_mad_buf;\r
                cl_memcpy( p_smp, p_mad, MAD_BLOCK_SIZE );\r
-               p_smp->method |= IB_MAD_METHOD_RESP_MASK;\r
+               p_smp->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
                if( p_smp->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                        p_smp->status = IB_SMP_DIRECTION;\r
                else\r
@@ -1621,7 +1622,8 @@ process_node_desc(
        if( status == IB_SUCCESS )\r
        {\r
                cl_memcpy( p_mad_resp->p_mad_buf, p_mad, MAD_BLOCK_SIZE );\r
-               p_mad_resp->p_mad_buf->method |= IB_MAD_METHOD_RESP_MASK;\r
+               p_mad_resp->p_mad_buf->method =\r
+                       (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
                if( p_mad_resp->p_mad_buf->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                        p_mad_resp->p_mad_buf->status = IB_SMP_DIRECTION;\r
                else\r
index abae347..a1ea245 100644 (file)
@@ -1,5 +1,6 @@
 /*\r
  * Copyright (c) 2005 SilverStorm Technologies.  All rights reserved.\r
+ * Copyright (c) 2006 Voltaire Corporation.  All rights reserved.\r
  *\r
  * This software is available to you under the OpenIB.org BSD license\r
  * below:\r
@@ -73,11 +74,10 @@ mlnx_cachable_guid_info(
                        return FALSE;\r
                }\r
        }\r
-       \r
 \r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
@@ -126,10 +126,9 @@ mlnx_cachable_pkey_table(
                }\r
        }\r
 \r
-\r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
@@ -166,10 +165,9 @@ mlnx_cachable_sl_vl_table(
                }\r
        }\r
 \r
-\r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
@@ -218,10 +216,9 @@ mlnx_cachable_vl_arb_table(
                }\r
        }\r
 \r
-\r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
index 9a32071..2274006 100644 (file)
@@ -1,5 +1,6 @@
 /*\r
  * Copyright (c) 2005 SilverStorm Technologies.  All rights reserved.\r
+ * Copyright (c) 2006 Voltaire Corporation.  All rights reserved.
  *\r
  * This software is available to you under the OpenIB.org BSD license\r
  * below:\r
@@ -80,11 +81,10 @@ mlnx_cachable_guid_info(
                        return FALSE;\r
                }\r
        }\r
-       \r
 \r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
@@ -132,11 +132,10 @@ mlnx_cachable_pkey_table(
                        return FALSE;\r
                }\r
        }\r
-       \r
 \r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
@@ -172,11 +171,10 @@ mlnx_cachable_sl_vl_table(
                        return FALSE;\r
                }\r
        }\r
-       \r
 \r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r
@@ -224,11 +222,10 @@ mlnx_cachable_vl_arb_table(
                        return FALSE;\r
                }\r
        }\r
-       \r
 \r
        /* Setup the response mad. */\r
        cl_memcpy( p_mad_out, p_mad_in, MAD_BLOCK_SIZE );\r
-       p_mad_out->method |= IB_MAD_METHOD_RESP_MASK;\r
+       p_mad_out->method = (IB_MAD_METHOD_RESP_MASK | IB_MAD_METHOD_GET);\r
        if( p_mad_out->mgmt_class == IB_MCLASS_SUBN_DIR )\r
                p_mad_out->status = IB_SMP_DIRECTION;\r
        else\r