Re: [PATCH] xfs_logprint: fix the transcation type string for delaylog-enabled fs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 09, 2016 at 12:08:27PM +0800, Hou Tao wrote:
> For delaylog-enabled fs, the only th_type is XFS_TRANS_CHECKPOINT,
> but the value of XFS_TRANS_CHECKPOINT had been change from 42 to 40
> by xfs commit 61e63ec (xfs: consolidate superblock logging functions),
> so return trans_type[type] directly will be incorrect.
> And there is no flag for delaylog testing, so the suboptimal solution
> is to use super v5 flag instead. For pre-v5 fs used by kernel after
> commit 61e63ec, the result of xlog_trans_type will still be incorrect.

delaylog and v5 superblocks are completely unrelated and so this is
incorrect.

> before patch:
> (1) v5 fs
> TRAN:    type: SWAPEXT       tid: 321be024       num_items: 2
> TRANS: tid:0x772d0805  type:SWAPEXT  #items:37  trans:0x772d0805  q:0x559104d71bc0
> 
> after patch:
> (2) v5 fs
> TRAN:    type: CHECKPOINT       tid: 321be024       num_items: 2
> TRANS: tid:0x772d0805  type:SWAPEXT  #items:37  trans:0x772d0805  q:0x559104d71bc0

And so v4 filesystems are still incorrect.

Indeed, when delaylog is enabled, the only transaction type in the
log is "CHECKPOINT" - the whole "trans type" stuff has gone away
from the kernel and only exists as this in xfs_log_format.h:

/*
 * The only type valid for th_type in CIL-enabled file system logs:
 */
#define XFS_TRANS_CHECKPOINT    40

IOWs, most of the logprint code is for printing log information from
pre-delaylog kernels. IOWs, for the anyone using a 3.0+ kernel, the
"trans type" output from xfs_logprint is completely useless
information, so we should probably either put it behind a command
line option or remove it completely...

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs



[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux