提交 5110cd82 编写于 作者: D Darrick J. Wong 提交者: Dave Chinner

xfs: use named array initializers for log item dumping

Use named array initializers for the string arrays used to dump log
items, rather than depending on the order being maintained correctly.
Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: NDave Chinner <dchinner@redhat.com>
Signed-off-by: NDave Chinner <david@fromorbit.com>

上级 49ca9118
......@@ -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);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册