Whamcloud - gitweb
LU-2467 protocol: Add OBD_CONNECT_PINGLESS
authorLi Wei <wei.g.li@intel.com>
Thu, 31 Jan 2013 09:48:23 +0000 (17:48 +0800)
committerAndreas Dilger <andreas.dilger@intel.com>
Fri, 8 Feb 2013 17:49:30 +0000 (12:49 -0500)
Reserve a bit for OBD_CONNECT_PINGLESS, which indicates a client is
capable of suppressing keep-alive OBD_PINGs.  If granted by a server,
it means the server does not require (but still allows) pings.

Change-Id: Ie10f505badd4250582656295eac2fd6844bb76b3
Signed-off-by: Li Wei <wei.g.li@intel.com>
Reviewed-on: http://review.whamcloud.com/5232
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
lustre/include/lustre/lustre_idl.h
lustre/obdclass/lprocfs_status.c
lustre/ptlrpc/wiretest.c
lustre/utils/wirecheck.c
lustre/utils/wiretest.c

index 3ebcbfc..6417dcf 100644 (file)
@@ -1115,6 +1115,7 @@ extern void lustre_swab_ptlrpc_body(struct ptlrpc_body *pb);
 #define OBD_CONNECT_NANOSEC_TIME 0x800000000000ULL /* nanosecond timestamps */
 #define OBD_CONNECT_LIGHTWEIGHT 0x1000000000000ULL /* lightweight connection */
 #define OBD_CONNECT_SHORTIO     0x2000000000000ULL /* short io */
+#define OBD_CONNECT_PINGLESS    0x4000000000000ULL /* pings not required */
 /* XXX README XXX:
  * Please DO NOT add flag values here before first ensuring that this same
  * flag value is not in use on some other branch.  Please clear any such
index 723db26..9ef31f0 100644 (file)
@@ -828,6 +828,7 @@ static const char *obd_connect_names[] = {
         "nanosecond_times",
         "lightweight_conn",
         "short_io",
+        "pingless",
         NULL
 };
 
index 65c64ba..80a23ab 100644 (file)
@@ -546,6 +546,7 @@ void lustre_assert_wire_constants(void)
         CLASSERT(OBD_CONNECT_NANOSEC_TIME == 0x800000000000ULL);
         CLASSERT(OBD_CONNECT_LIGHTWEIGHT == 0x1000000000000ULL);
         CLASSERT(OBD_CONNECT_SHORTIO == 0x2000000000000ULL);
+        CLASSERT(OBD_CONNECT_PINGLESS == 0x4000000000000ULL);
 
         /* Checks for struct obdo */
         LASSERTF((int)sizeof(struct obdo) == 208, " found %lld\n",
index e8045f8..cf93658 100644 (file)
@@ -251,6 +251,7 @@ static void check_obd_connect_data(void)
         CHECK_CDEFINE(OBD_CONNECT_NANOSEC_TIME);
         CHECK_CDEFINE(OBD_CONNECT_LIGHTWEIGHT);
         CHECK_CDEFINE(OBD_CONNECT_SHORTIO);
+        CHECK_CDEFINE(OBD_CONNECT_PINGLESS);
 }
 
 static void
index 26a7a1c..8bb44a0 100644 (file)
@@ -543,6 +543,7 @@ void lustre_assert_wire_constants(void)
         CLASSERT(OBD_CONNECT_NANOSEC_TIME == 0x800000000000ULL);
         CLASSERT(OBD_CONNECT_LIGHTWEIGHT == 0x1000000000000ULL);
         CLASSERT(OBD_CONNECT_SHORTIO == 0x2000000000000ULL);
+        CLASSERT(OBD_CONNECT_PINGLESS == 0x4000000000000ULL);
 
         /* Checks for struct obdo */
         LASSERTF((int)sizeof(struct obdo) == 208, " found %lld\n",