|
@@ -2008,77 +2008,81 @@ xlog_print_tic_res(
|
|
|
uint ophdr_spc = ticket->t_res_num_ophdrs * (uint)sizeof(xlog_op_header_t);
|
|
|
|
|
|
/* match with XLOG_REG_TYPE_* in xfs_log.h */
|
|
|
- static char *res_type_str[XLOG_REG_TYPE_MAX] = {
|
|
|
- "bformat",
|
|
|
- "bchunk",
|
|
|
- "efi_format",
|
|
|
- "efd_format",
|
|
|
- "iformat",
|
|
|
- "icore",
|
|
|
- "iext",
|
|
|
- "ibroot",
|
|
|
- "ilocal",
|
|
|
- "iattr_ext",
|
|
|
- "iattr_broot",
|
|
|
- "iattr_local",
|
|
|
- "qformat",
|
|
|
- "dquot",
|
|
|
- "quotaoff",
|
|
|
- "LR header",
|
|
|
- "unmount",
|
|
|
- "commit",
|
|
|
- "trans header"
|
|
|
+#define REG_TYPE_STR(type, str) [XLOG_REG_TYPE_##type] = str
|
|
|
+ static char *res_type_str[XLOG_REG_TYPE_MAX + 1] = {
|
|
|
+ REG_TYPE_STR(BFORMAT, "bformat"),
|
|
|
+ REG_TYPE_STR(BCHUNK, "bchunk"),
|
|
|
+ REG_TYPE_STR(EFI_FORMAT, "efi_format"),
|
|
|
+ REG_TYPE_STR(EFD_FORMAT, "efd_format"),
|
|
|
+ REG_TYPE_STR(IFORMAT, "iformat"),
|
|
|
+ REG_TYPE_STR(ICORE, "icore"),
|
|
|
+ REG_TYPE_STR(IEXT, "iext"),
|
|
|
+ REG_TYPE_STR(IBROOT, "ibroot"),
|
|
|
+ REG_TYPE_STR(ILOCAL, "ilocal"),
|
|
|
+ REG_TYPE_STR(IATTR_EXT, "iattr_ext"),
|
|
|
+ REG_TYPE_STR(IATTR_BROOT, "iattr_broot"),
|
|
|
+ REG_TYPE_STR(IATTR_LOCAL, "iattr_local"),
|
|
|
+ REG_TYPE_STR(QFORMAT, "qformat"),
|
|
|
+ REG_TYPE_STR(DQUOT, "dquot"),
|
|
|
+ REG_TYPE_STR(QUOTAOFF, "quotaoff"),
|
|
|
+ REG_TYPE_STR(LRHEADER, "LR header"),
|
|
|
+ REG_TYPE_STR(UNMOUNT, "unmount"),
|
|
|
+ REG_TYPE_STR(COMMIT, "commit"),
|
|
|
+ REG_TYPE_STR(TRANSHDR, "trans header"),
|
|
|
+ REG_TYPE_STR(ICREATE, "inode create")
|
|
|
};
|
|
|
+#undef REG_TYPE_STR
|
|
|
+#define TRANS_TYPE_STR(type) [XFS_TRANS_##type] = #type
|
|
|
static char *trans_type_str[XFS_TRANS_TYPE_MAX] = {
|
|
|
- "SETATTR_NOT_SIZE",
|
|
|
- "SETATTR_SIZE",
|
|
|
- "INACTIVE",
|
|
|
- "CREATE",
|
|
|
- "CREATE_TRUNC",
|
|
|
- "TRUNCATE_FILE",
|
|
|
- "REMOVE",
|
|
|
- "LINK",
|
|
|
- "RENAME",
|
|
|
- "MKDIR",
|
|
|
- "RMDIR",
|
|
|
- "SYMLINK",
|
|
|
- "SET_DMATTRS",
|
|
|
- "GROWFS",
|
|
|
- "STRAT_WRITE",
|
|
|
- "DIOSTRAT",
|
|
|
- "WRITE_SYNC",
|
|
|
- "WRITEID",
|
|
|
- "ADDAFORK",
|
|
|
- "ATTRINVAL",
|
|
|
- "ATRUNCATE",
|
|
|
- "ATTR_SET",
|
|
|
- "ATTR_RM",
|
|
|
- "ATTR_FLAG",
|
|
|
- "CLEAR_AGI_BUCKET",
|
|
|
- "QM_SBCHANGE",
|
|
|
- "DUMMY1",
|
|
|
- "DUMMY2",
|
|
|
- "QM_QUOTAOFF",
|
|
|
- "QM_DQALLOC",
|
|
|
- "QM_SETQLIM",
|
|
|
- "QM_DQCLUSTER",
|
|
|
- "QM_QINOCREATE",
|
|
|
- "QM_QUOTAOFF_END",
|
|
|
- "FSYNC_TS",
|
|
|
- "GROWFSRT_ALLOC",
|
|
|
- "GROWFSRT_ZERO",
|
|
|
- "GROWFSRT_FREE",
|
|
|
- "SWAPEXT",
|
|
|
- "CHECKPOINT",
|
|
|
- "ICREATE",
|
|
|
- "CREATE_TMPFILE"
|
|
|
+ TRANS_TYPE_STR(SETATTR_NOT_SIZE),
|
|
|
+ TRANS_TYPE_STR(SETATTR_SIZE),
|
|
|
+ TRANS_TYPE_STR(INACTIVE),
|
|
|
+ TRANS_TYPE_STR(CREATE),
|
|
|
+ TRANS_TYPE_STR(CREATE_TRUNC),
|
|
|
+ TRANS_TYPE_STR(TRUNCATE_FILE),
|
|
|
+ TRANS_TYPE_STR(REMOVE),
|
|
|
+ TRANS_TYPE_STR(LINK),
|
|
|
+ TRANS_TYPE_STR(RENAME),
|
|
|
+ TRANS_TYPE_STR(MKDIR),
|
|
|
+ TRANS_TYPE_STR(RMDIR),
|
|
|
+ TRANS_TYPE_STR(SYMLINK),
|
|
|
+ TRANS_TYPE_STR(SET_DMATTRS),
|
|
|
+ TRANS_TYPE_STR(GROWFS),
|
|
|
+ TRANS_TYPE_STR(STRAT_WRITE),
|
|
|
+ TRANS_TYPE_STR(DIOSTRAT),
|
|
|
+ TRANS_TYPE_STR(WRITEID),
|
|
|
+ TRANS_TYPE_STR(ADDAFORK),
|
|
|
+ TRANS_TYPE_STR(ATTRINVAL),
|
|
|
+ TRANS_TYPE_STR(ATRUNCATE),
|
|
|
+ TRANS_TYPE_STR(ATTR_SET),
|
|
|
+ TRANS_TYPE_STR(ATTR_RM),
|
|
|
+ TRANS_TYPE_STR(ATTR_FLAG),
|
|
|
+ TRANS_TYPE_STR(CLEAR_AGI_BUCKET),
|
|
|
+ TRANS_TYPE_STR(SB_CHANGE),
|
|
|
+ TRANS_TYPE_STR(DUMMY1),
|
|
|
+ TRANS_TYPE_STR(DUMMY2),
|
|
|
+ TRANS_TYPE_STR(QM_QUOTAOFF),
|
|
|
+ TRANS_TYPE_STR(QM_DQALLOC),
|
|
|
+ TRANS_TYPE_STR(QM_SETQLIM),
|
|
|
+ TRANS_TYPE_STR(QM_DQCLUSTER),
|
|
|
+ TRANS_TYPE_STR(QM_QINOCREATE),
|
|
|
+ TRANS_TYPE_STR(QM_QUOTAOFF_END),
|
|
|
+ TRANS_TYPE_STR(FSYNC_TS),
|
|
|
+ TRANS_TYPE_STR(GROWFSRT_ALLOC),
|
|
|
+ TRANS_TYPE_STR(GROWFSRT_ZERO),
|
|
|
+ TRANS_TYPE_STR(GROWFSRT_FREE),
|
|
|
+ TRANS_TYPE_STR(SWAPEXT),
|
|
|
+ TRANS_TYPE_STR(CHECKPOINT),
|
|
|
+ TRANS_TYPE_STR(ICREATE),
|
|
|
+ TRANS_TYPE_STR(CREATE_TMPFILE)
|
|
|
};
|
|
|
+#undef TRANS_TYPE_STR
|
|
|
|
|
|
xfs_warn(mp, "xlog_write: reservation summary:");
|
|
|
xfs_warn(mp, " trans type = %s (%u)",
|
|
|
((ticket->t_trans_type <= 0 ||
|
|
|
ticket->t_trans_type > XFS_TRANS_TYPE_MAX) ?
|
|
|
- "bad-trans-type" : trans_type_str[ticket->t_trans_type-1]),
|
|
|
+ "bad-trans-type" : trans_type_str[ticket->t_trans_type]),
|
|
|
ticket->t_trans_type);
|
|
|
xfs_warn(mp, " unit res = %d bytes",
|
|
|
ticket->t_unit_res);
|
|
@@ -2097,7 +2101,7 @@ xlog_print_tic_res(
|
|
|
uint r_type = ticket->t_res_arr[i].r_type;
|
|
|
xfs_warn(mp, "region[%u]: %s - %u bytes", i,
|
|
|
((r_type <= 0 || r_type > XLOG_REG_TYPE_MAX) ?
|
|
|
- "bad-rtype" : res_type_str[r_type-1]),
|
|
|
+ "bad-rtype" : res_type_str[r_type]),
|
|
|
ticket->t_res_arr[i].r_len);
|
|
|
}
|
|
|
|