xfs: remove lsn relevant fields from xfs_trans structure and its users
authorShan Hai <shan.hai@oracle.com>
Thu, 15 Jun 2017 04:35:07 +0000 (21:35 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Mon, 19 Jun 2017 15:59:10 +0000 (08:59 -0700)
The t_lsn is not used anymore and the t_commit_lsn is used as a tmp
storage for the checkpoint sequence number only in the current code.

And the start/commit lsn are tracked as a transaction group tag in
the xfs_cil_ctx instead of a single transaction, so remove them from
the xfs_trans structure and their users to match with the design.

Signed-off-by: Shan Hai <shan.hai@oracle.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
fs/xfs/xfs_log_cil.c
fs/xfs/xfs_trace.h
fs/xfs/xfs_trans.h

index 04b389210cc723a7514a9cc6ba3d17f82e19c222..fbe72b134bef219e80420063bfe2db2abc594e49 100644 (file)
@@ -993,6 +993,7 @@ xfs_log_commit_cil(
 {
        struct xlog             *log = mp->m_log;
        struct xfs_cil          *cil = log->l_cilp;
+       xfs_lsn_t               xc_commit_lsn;
 
        /*
         * Do all necessary memory allocation before we lock the CIL.
@@ -1006,9 +1007,9 @@ xfs_log_commit_cil(
 
        xlog_cil_insert_items(log, tp);
 
-       tp->t_commit_lsn = cil->xc_ctx->sequence;
+       xc_commit_lsn = cil->xc_ctx->sequence;
        if (commit_lsn)
-               *commit_lsn = tp->t_commit_lsn;
+               *commit_lsn = xc_commit_lsn;
 
        xfs_log_done(mp, tp->t_ticket, NULL, regrant);
        xfs_trans_unreserve_and_mod_sb(tp);
@@ -1024,7 +1025,7 @@ xfs_log_commit_cil(
         * the log items. This affects (at least) processing of stale buffers,
         * inodes and EFIs.
         */
-       xfs_trans_free_items(tp, tp->t_commit_lsn, false);
+       xfs_trans_free_items(tp, xc_commit_lsn, false);
 
        xlog_cil_push_background(log);
 
index 306d89c5526775a84fd885769115084d15ac7d5f..a560bfd392c101f78aa35397dc077bf71ba78239 100644 (file)
@@ -1491,25 +1491,6 @@ TRACE_EVENT(xfs_extent_busy_trim,
                  __entry->tlen)
 );
 
-TRACE_EVENT(xfs_trans_commit_lsn,
-       TP_PROTO(struct xfs_trans *trans),
-       TP_ARGS(trans),
-       TP_STRUCT__entry(
-               __field(dev_t, dev)
-               __field(struct xfs_trans *, tp)
-               __field(xfs_lsn_t, lsn)
-       ),
-       TP_fast_assign(
-               __entry->dev = trans->t_mountp->m_super->s_dev;
-               __entry->tp = trans;
-               __entry->lsn = trans->t_commit_lsn;
-       ),
-       TP_printk("dev %d:%d trans 0x%p commit_lsn 0x%llx",
-                 MAJOR(__entry->dev), MINOR(__entry->dev),
-                 __entry->tp,
-                 __entry->lsn)
-);
-
 TRACE_EVENT(xfs_agf,
        TP_PROTO(struct xfs_mount *mp, struct xfs_agf *agf, int flags,
                 unsigned long caller_ip),
index 08923e59ea9dcc4bc1d38262e3631932c4294840..82bb61e330d9123c290678bb4b2f9638872976bb 100644 (file)
@@ -105,10 +105,6 @@ typedef struct xfs_trans {
        unsigned int            t_rtx_res;      /* # of rt extents resvd */
        unsigned int            t_rtx_res_used; /* # of resvd rt extents used */
        struct xlog_ticket      *t_ticket;      /* log mgr ticket */
-       xfs_lsn_t               t_lsn;          /* log seq num of start of
-                                                * transaction. */
-       xfs_lsn_t               t_commit_lsn;   /* log seq num of end of
-                                                * transaction. */
        struct xfs_mount        *t_mountp;      /* ptr to fs mount struct */
        struct xfs_dquot_acct   *t_dqinfo;      /* acctg info for dquots */
        unsigned int            t_flags;        /* misc flags */