Introduce a new connect flag OBD_CONNECT2_CRUSH to indicate whether
client or server supports new directory hash type 'crush'.
Test-parameters: trivial
Signed-off-by: Lai Siyao <lai.siyao@whamcloud.com>
Change-Id: I073ab65eddf502c016f30ad535740f3d9a77459f
Reviewed-on: https://review.whamcloud.com/36774
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Olaf Faaland-LLNL <faaland1@llnl.gov>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
#define OBD_CONNECT2_SELINUX_POLICY 0x400ULL /* has client SELinux policy */
#define OBD_CONNECT2_LSOM 0x800ULL /* LSOM support */
#define OBD_CONNECT2_PCC 0x1000ULL /* Persistent Client Cache */
#define OBD_CONNECT2_SELINUX_POLICY 0x400ULL /* has client SELinux policy */
#define OBD_CONNECT2_LSOM 0x800ULL /* LSOM support */
#define OBD_CONNECT2_PCC 0x1000ULL /* Persistent Client Cache */
+#define OBD_CONNECT2_CRUSH 0x2000ULL /* crush hash striped directory */
#define OBD_CONNECT2_ASYNC_DISCARD 0x4000ULL /* support async DoM data discard */
#define OBD_CONNECT2_ENCRYPT 0x8000ULL /* client-to-disk encrypt */
/* XXX README XXX:
#define OBD_CONNECT2_ASYNC_DISCARD 0x4000ULL /* support async DoM data discard */
#define OBD_CONNECT2_ENCRYPT 0x8000ULL /* client-to-disk encrypt */
/* XXX README XXX:
"selinux_policy", /* 0x400 */
"lsom", /* 0x800 */
"pcc", /* 0x1000 */
"selinux_policy", /* 0x400 */
"lsom", /* 0x800 */
"pcc", /* 0x1000 */
- "plain_layout", /* 0x2000 */
"async_discard", /* 0x4000 */
"client_encryption", /* 0x8000 */
NULL
"async_discard", /* 0x4000 */
"client_encryption", /* 0x8000 */
NULL
OBD_CONNECT2_LSOM);
LASSERTF(OBD_CONNECT2_PCC == 0x1000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_PCC);
OBD_CONNECT2_LSOM);
LASSERTF(OBD_CONNECT2_PCC == 0x1000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_PCC);
+ LASSERTF(OBD_CONNECT2_CRUSH == 0x2000ULL, "found 0x%.16llxULL\n",
+ OBD_CONNECT2_CRUSH);
LASSERTF(OBD_CONNECT2_ASYNC_DISCARD == 0x4000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_ASYNC_DISCARD);
LASSERTF(OBD_CONNECT2_ENCRYPT == 0x8000ULL, "found 0x%.16llxULL\n",
LASSERTF(OBD_CONNECT2_ASYNC_DISCARD == 0x4000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_ASYNC_DISCARD);
LASSERTF(OBD_CONNECT2_ENCRYPT == 0x8000ULL, "found 0x%.16llxULL\n",
CHECK_DEFINE_64X(OBD_CONNECT2_SELINUX_POLICY);
CHECK_DEFINE_64X(OBD_CONNECT2_LSOM);
CHECK_DEFINE_64X(OBD_CONNECT2_PCC);
CHECK_DEFINE_64X(OBD_CONNECT2_SELINUX_POLICY);
CHECK_DEFINE_64X(OBD_CONNECT2_LSOM);
CHECK_DEFINE_64X(OBD_CONNECT2_PCC);
+ CHECK_DEFINE_64X(OBD_CONNECT2_CRUSH);
CHECK_DEFINE_64X(OBD_CONNECT2_ASYNC_DISCARD);
CHECK_DEFINE_64X(OBD_CONNECT2_ENCRYPT);
CHECK_DEFINE_64X(OBD_CONNECT2_ASYNC_DISCARD);
CHECK_DEFINE_64X(OBD_CONNECT2_ENCRYPT);
OBD_CONNECT2_LSOM);
LASSERTF(OBD_CONNECT2_PCC == 0x1000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_PCC);
OBD_CONNECT2_LSOM);
LASSERTF(OBD_CONNECT2_PCC == 0x1000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_PCC);
+ LASSERTF(OBD_CONNECT2_CRUSH == 0x2000ULL, "found 0x%.16llxULL\n",
+ OBD_CONNECT2_CRUSH);
LASSERTF(OBD_CONNECT2_ASYNC_DISCARD == 0x4000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_ASYNC_DISCARD);
LASSERTF(OBD_CONNECT2_ENCRYPT == 0x8000ULL, "found 0x%.16llxULL\n",
LASSERTF(OBD_CONNECT2_ASYNC_DISCARD == 0x4000ULL, "found 0x%.16llxULL\n",
OBD_CONNECT2_ASYNC_DISCARD);
LASSERTF(OBD_CONNECT2_ENCRYPT == 0x8000ULL, "found 0x%.16llxULL\n",