Whamcloud - gitweb
LU-1789 protocol: reserve connect flag for lightweight conn
authorJohann Lombardi <johann@whamcloud.com>
Mon, 27 Aug 2012 16:28:20 +0000 (18:28 +0200)
committerAndreas Dilger <adilger@whamcloud.com>
Fri, 7 Sep 2012 20:58:39 +0000 (16:58 -0400)
Reserve connection flag for lightweight connection support to avoid
conflicts. The main property of a lightweight connection is that
there is no entry in the last_rcvd file for this export, so no
recovery is possible. This type of connection will be used by quota
(between master & slave), FIDonOST and likely by other features in the
future.

Signed-off-by: Johann Lombardi <johann@whamcloud.com>
Change-Id: I4367f5bfaef0207e7f307c4ea3d35e97ca99dc5b
Reviewed-on: http://review.whamcloud.com/3794
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.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 4d443e6..05a01f2 100644 (file)
@@ -1157,6 +1157,7 @@ extern void lustre_swab_ptlrpc_body(struct ptlrpc_body *pb);
                                                   * finer space reservation */
 #define OBD_CONNECT_NANOSEC_TIME 0x200000000000ULL /* nanosecond timestamps */
 #define OBD_CONNECT_LVB_TYPE   0x400000000000ULL /* variable type of LVB */
+#define OBD_CONNECT_LIGHTWEIGHT 0x1000000000000ULL/* lightweight connection */
 /* 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 0b4941f..e1dc6de 100644 (file)
@@ -952,6 +952,10 @@ static const char *obd_connect_names[] = {
         "umask",
         "einprogress",
         "grant_param",
+       "nanoseconds_times",
+       "lvb_type",
+       "unknown",
+       "lightweight_conn",
         NULL
 };
 
index 0f89390..50d18be 100644 (file)
@@ -1075,6 +1075,8 @@ void lustre_assert_wire_constants(void)
                  OBD_CONNECT_EINPROGRESS);
         LASSERTF(OBD_CONNECT_GRANT_PARAM == 0x100000000000ULL, "found 0x%.16llxULL\n",
                  OBD_CONNECT_GRANT_PARAM);
+        LASSERTF(OBD_CONNECT_LIGHTWEIGHT == 0x1000000000000ULL, "found 0x%.16llxULL\n",
+                 OBD_CONNECT_LIGHTWEIGHT);
         LASSERTF(OBD_CKSUM_CRC32 == 0x00000001UL, "found 0x%.8xUL\n",
                  (unsigned)OBD_CKSUM_CRC32);
         LASSERTF(OBD_CKSUM_ADLER == 0x00000002UL, "found 0x%.8xUL\n",
index 8cdb7a6..2366f54 100644 (file)
@@ -489,6 +489,7 @@ check_obd_connect_data(void)
         CHECK_DEFINE_64X(OBD_CONNECT_UMASK);
         CHECK_DEFINE_64X(OBD_CONNECT_EINPROGRESS);
         CHECK_DEFINE_64X(OBD_CONNECT_GRANT_PARAM);
+        CHECK_DEFINE_64X(OBD_CONNECT_LIGHTWEIGHT);
 
         CHECK_VALUE_X(OBD_CKSUM_CRC32);
         CHECK_VALUE_X(OBD_CKSUM_ADLER);
index c6f4f1c..a80e0b6 100644 (file)
@@ -1083,6 +1083,8 @@ void lustre_assert_wire_constants(void)
                  OBD_CONNECT_EINPROGRESS);
         LASSERTF(OBD_CONNECT_GRANT_PARAM == 0x100000000000ULL, "found 0x%.16llxULL\n",
                  OBD_CONNECT_GRANT_PARAM);
+        LASSERTF(OBD_CONNECT_LIGHTWEIGHT == 0x1000000000000ULL, "found 0x%.16llxULL\n",
+                 OBD_CONNECT_LIGHTWEIGHT);
         LASSERTF(OBD_CKSUM_CRC32 == 0x00000001UL, "found 0x%.8xUL\n",
                  (unsigned)OBD_CKSUM_CRC32);
         LASSERTF(OBD_CKSUM_ADLER == 0x00000002UL, "found 0x%.8xUL\n",