* [V2 PATCH 1/1] xfs: remove lsn relevant fields from xfs_trans structure and its users
@ 2017-05-12 2:10 Shan Hai
2017-05-12 16:29 ` Darrick J. Wong
0 siblings, 1 reply; 2+ messages in thread
From: Shan Hai @ 2017-05-12 2:10 UTC (permalink / raw)
To: linux-xfs; +Cc: hch
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>
---
fs/xfs/xfs_log_cil.c | 7 ++++---
fs/xfs/xfs_trace.h | 19 -------------------
fs/xfs/xfs_trans.h | 4 ----
3 files changed, 4 insertions(+), 26 deletions(-)
diff --git a/fs/xfs/xfs_log_cil.c b/fs/xfs/xfs_log_cil.c
index 82f1cbc..10309cf 100644
--- a/fs/xfs/xfs_log_cil.c
+++ b/fs/xfs/xfs_log_cil.c
@@ -973,6 +973,7 @@
{
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.
@@ -990,9 +991,9 @@
if (tp->t_ticket->t_curr_res < 0)
xlog_print_tic_res(mp, tp->t_ticket);
- 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);
@@ -1008,7 +1009,7 @@
* 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);
diff --git a/fs/xfs/xfs_trace.h b/fs/xfs/xfs_trace.h
index 7c5a165..0712eb7 100644
--- a/fs/xfs/xfs_trace.h
+++ b/fs/xfs/xfs_trace.h
@@ -1490,25 +1490,6 @@
__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),
diff --git a/fs/xfs/xfs_trans.h b/fs/xfs/xfs_trans.h
index a07acbf..80b3ed5 100644
--- a/fs/xfs/xfs_trans.h
+++ b/fs/xfs/xfs_trans.h
@@ -105,10 +105,6 @@ void xfs_log_item_init(struct xfs_mount *mp, struct xfs_log_item *item,
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 */
--
1.8.3.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [V2 PATCH 1/1] xfs: remove lsn relevant fields from xfs_trans structure and its users
2017-05-12 2:10 [V2 PATCH 1/1] xfs: remove lsn relevant fields from xfs_trans structure and its users Shan Hai
@ 2017-05-12 16:29 ` Darrick J. Wong
0 siblings, 0 replies; 2+ messages in thread
From: Darrick J. Wong @ 2017-05-12 16:29 UTC (permalink / raw)
To: Shan Hai; +Cc: linux-xfs, hch
On Fri, May 12, 2017 at 10:10:15AM +0800, Shan Hai wrote:
> 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>
Looks ok,
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
--D
> ---
> fs/xfs/xfs_log_cil.c | 7 ++++---
> fs/xfs/xfs_trace.h | 19 -------------------
> fs/xfs/xfs_trans.h | 4 ----
> 3 files changed, 4 insertions(+), 26 deletions(-)
>
> diff --git a/fs/xfs/xfs_log_cil.c b/fs/xfs/xfs_log_cil.c
> index 82f1cbc..10309cf 100644
> --- a/fs/xfs/xfs_log_cil.c
> +++ b/fs/xfs/xfs_log_cil.c
> @@ -973,6 +973,7 @@
> {
> 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.
> @@ -990,9 +991,9 @@
> if (tp->t_ticket->t_curr_res < 0)
> xlog_print_tic_res(mp, tp->t_ticket);
>
> - 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);
> @@ -1008,7 +1009,7 @@
> * 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);
>
> diff --git a/fs/xfs/xfs_trace.h b/fs/xfs/xfs_trace.h
> index 7c5a165..0712eb7 100644
> --- a/fs/xfs/xfs_trace.h
> +++ b/fs/xfs/xfs_trace.h
> @@ -1490,25 +1490,6 @@
> __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),
> diff --git a/fs/xfs/xfs_trans.h b/fs/xfs/xfs_trans.h
> index a07acbf..80b3ed5 100644
> --- a/fs/xfs/xfs_trans.h
> +++ b/fs/xfs/xfs_trans.h
> @@ -105,10 +105,6 @@ void xfs_log_item_init(struct xfs_mount *mp, struct xfs_log_item *item,
> 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 */
> --
> 1.8.3.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-05-12 16:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-12 2:10 [V2 PATCH 1/1] xfs: remove lsn relevant fields from xfs_trans structure and its users Shan Hai
2017-05-12 16:29 ` Darrick J. Wong
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).