REINT_RENAME = 5,
REINT_OPEN = 6,
REINT_SETXATTR = 7,
- // REINT_CLOSE = 8,
- // REINT_WRITE = 9,
+ REINT_RMENTRY = 8,
+ REINT_MIGRATE = 9,
REINT_MAX
} mds_reint_t;
{ REINT_RENAME, "REINT_RENAME" },
{ REINT_OPEN, "REINT_OPEN" },
{ REINT_SETXATTR, "REINT_SETXATTR" },
+ { REINT_RMENTRY, "REINT_RMENTRY" },
+ { REINT_MIGRATE, "REINT_MIGRATE" },
{ 0, NULL }
};
const value_string lustre_op_codes[] = {
[REINT_UNLINK] = mdt_reconstruct_generic,
[REINT_RENAME] = mdt_reconstruct_generic,
[REINT_OPEN] = mdt_reconstruct_open,
- [REINT_SETXATTR] = mdt_reconstruct_generic
+ [REINT_SETXATTR] = mdt_reconstruct_generic,
+ [REINT_RMENTRY] = mdt_reconstruct_generic,
+ [REINT_MIGRATE] = mdt_reconstruct_generic
};
void mdt_reconstruct(struct mdt_thread_info *mti,
struct mdt_lock_handle *lhc)
{
+ mdt_reconstructor reconst;
ENTRY;
- reconstructors[mti->mti_rr.rr_opcode](mti, lhc);
+ LASSERT(mti->mti_rr.rr_opcode < REINT_MAX &&
+ (reconst = reconstructors[mti->mti_rr.rr_opcode]) != NULL);
+ reconst(mti, lhc);
EXIT;
}