-static struct mdt_it_flavor {
- const struct req_format *it_fmt;
- __u32 it_flags;
- int (*it_act)(enum mdt_it_code ,
- struct mdt_thread_info *,
- struct ldlm_lock **,
- __u64);
- long it_reint;
-} mdt_it_flavor[] = {
- [MDT_IT_OPEN] = {
- .it_fmt = &RQF_LDLM_INTENT,
- /*.it_flags = HABEO_REFERO,*/
- .it_flags = 0,
- .it_act = mdt_intent_reint,
- .it_reint = REINT_OPEN
- },
- [MDT_IT_OCREAT] = {
- .it_fmt = &RQF_LDLM_INTENT,
- /*
- * OCREAT is not a MUTABOR request as if the file
- * already exists.
- * We do the extra check of OBD_CONNECT_RDONLY in
- * mdt_reint_open() when we really need to create
- * the object.
- */
- .it_flags = 0,
- .it_act = mdt_intent_reint,
- .it_reint = REINT_OPEN
- },
- [MDT_IT_GETATTR] = {
- .it_fmt = &RQF_LDLM_INTENT_GETATTR,
- .it_flags = HABEO_REFERO,
- .it_act = mdt_intent_getattr
- },
- [MDT_IT_LOOKUP] = {
- .it_fmt = &RQF_LDLM_INTENT_GETATTR,
- .it_flags = HABEO_REFERO,
- .it_act = mdt_intent_getattr
- },
- [MDT_IT_GETXATTR] = {
- .it_fmt = &RQF_LDLM_INTENT_GETXATTR,
- .it_flags = HABEO_CORPUS,
- .it_act = mdt_intent_getxattr
- },
- [MDT_IT_LAYOUT] = {
- .it_fmt = &RQF_LDLM_INTENT_LAYOUT,
- .it_flags = 0,
- .it_act = mdt_intent_layout
- },
- [MDT_IT_GLIMPSE] = {
- .it_fmt = &RQF_LDLM_INTENT,
- .it_flags = 0,
- .it_act = mdt_intent_glimpse,
- },
- [MDT_IT_BRW] = {
- .it_fmt = &RQF_LDLM_INTENT,
- .it_flags = 0,
- .it_act = mdt_intent_brw,
- },
-
-};
-