From: "Darrick J. Wong" <djwong@kernel.org>
To: Dave Chinner <david@fromorbit.com>
Cc: linux-xfs@vger.kernel.org
Subject: Re: [PATCH 10/10] xfs: need to see iclog flags in tracing
Date: Mon, 26 Jul 2021 10:57:30 -0700 [thread overview]
Message-ID: <20210726175730.GZ559212@magnolia> (raw)
In-Reply-To: <20210726060716.3295008-11-david@fromorbit.com>
On Mon, Jul 26, 2021 at 04:07:16PM +1000, Dave Chinner wrote:
> From: Dave Chinner <dchinner@redhat.com>
>
> Because I cannot tell if the NEED_FLUSH flag is being set correctly
> by the log force and CIL push machinery without it.
>
> Signed-off-by: Dave Chinner <dchinner@redhat.com>
Looks good,
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
--D
> ---
> fs/xfs/xfs_log_priv.h | 13 ++++++++++---
> fs/xfs/xfs_trace.h | 5 ++++-
> 2 files changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/fs/xfs/xfs_log_priv.h b/fs/xfs/xfs_log_priv.h
> index 7cbde0b4f990..f3e79a45d60a 100644
> --- a/fs/xfs/xfs_log_priv.h
> +++ b/fs/xfs/xfs_log_priv.h
> @@ -59,6 +59,16 @@ enum xlog_iclog_state {
> { XLOG_STATE_DIRTY, "XLOG_STATE_DIRTY" }, \
> { XLOG_STATE_IOERROR, "XLOG_STATE_IOERROR" }
>
> +/*
> + * In core log flags
> + */
> +#define XLOG_ICL_NEED_FLUSH (1 << 0) /* iclog needs REQ_PREFLUSH */
> +#define XLOG_ICL_NEED_FUA (1 << 1) /* iclog needs REQ_FUA */
> +
> +#define XLOG_ICL_STRINGS \
> + { XLOG_ICL_NEED_FLUSH, "XLOG_ICL_NEED_FLUSH" }, \
> + { XLOG_ICL_NEED_FUA, "XLOG_ICL_NEED_FUA" }
> +
>
> /*
> * Log ticket flags
> @@ -143,9 +153,6 @@ enum xlog_iclog_state {
>
> #define XLOG_COVER_OPS 5
>
> -#define XLOG_ICL_NEED_FLUSH (1 << 0) /* iclog needs REQ_PREFLUSH */
> -#define XLOG_ICL_NEED_FUA (1 << 1) /* iclog needs REQ_FUA */
> -
> /* Ticket reservation region accounting */
> #define XLOG_TIC_LEN_MAX 15
>
> diff --git a/fs/xfs/xfs_trace.h b/fs/xfs/xfs_trace.h
> index f9d8d605f9b1..19260291ff8b 100644
> --- a/fs/xfs/xfs_trace.h
> +++ b/fs/xfs/xfs_trace.h
> @@ -3944,6 +3944,7 @@ DECLARE_EVENT_CLASS(xlog_iclog_class,
> __field(uint32_t, state)
> __field(int32_t, refcount)
> __field(uint32_t, offset)
> + __field(uint32_t, flags)
> __field(unsigned long long, lsn)
> __field(unsigned long, caller_ip)
> ),
> @@ -3952,15 +3953,17 @@ DECLARE_EVENT_CLASS(xlog_iclog_class,
> __entry->state = iclog->ic_state;
> __entry->refcount = atomic_read(&iclog->ic_refcnt);
> __entry->offset = iclog->ic_offset;
> + __entry->flags = iclog->ic_flags;
> __entry->lsn = be64_to_cpu(iclog->ic_header.h_lsn);
> __entry->caller_ip = caller_ip;
> ),
> - TP_printk("dev %d:%d state %s refcnt %d offset %u lsn 0x%llx caller %pS",
> + TP_printk("dev %d:%d state %s refcnt %d offset %u lsn 0x%llx flags %s caller %pS",
> MAJOR(__entry->dev), MINOR(__entry->dev),
> __print_symbolic(__entry->state, XLOG_STATE_STRINGS),
> __entry->refcount,
> __entry->offset,
> __entry->lsn,
> + __print_flags(__entry->flags, "|", XLOG_ICL_STRINGS),
> (char *)__entry->caller_ip)
>
> );
> --
> 2.31.1
>
prev parent reply other threads:[~2021-07-26 17:57 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-26 6:07 [PATCH 0/10 v2] xfs: fix log cache flush regressions and bugs Dave Chinner
2021-07-26 6:07 ` [PATCH 01/10] xfs: flush data dev on external log write Dave Chinner
2021-07-26 6:07 ` [PATCH 02/10] xfs: external logs need to flush data device Dave Chinner
2021-07-26 6:07 ` [PATCH 03/10] xfs: fold __xlog_state_release_iclog into xlog_state_release_iclog Dave Chinner
2021-07-26 17:20 ` Darrick J. Wong
2021-07-26 6:07 ` [PATCH 04/10] xfs: fix ordering violation between cache flushes and tail updates Dave Chinner
2021-07-26 7:22 ` Christoph Hellwig
2021-07-26 17:35 ` Darrick J. Wong
2021-07-26 21:44 ` Dave Chinner
2021-07-26 22:16 ` Darrick J. Wong
2021-07-26 6:07 ` [PATCH 05/10] xfs: factor out forced iclog flushes Dave Chinner
2021-07-26 7:25 ` Christoph Hellwig
2021-07-26 17:48 ` Darrick J. Wong
2021-07-26 21:47 ` Dave Chinner
2021-07-26 6:07 ` [PATCH 06/10] xfs: log forces imply data device cache flushes Dave Chinner
2021-07-26 7:27 ` Christoph Hellwig
2021-07-26 17:58 ` Darrick J. Wong
2021-07-26 6:07 ` [PATCH 07/10] xfs: avoid unnecessary waits in xfs_log_force_lsn() Dave Chinner
2021-07-26 6:07 ` [PATCH 08/10] xfs: logging the on disk inode LSN can make it go backwards Dave Chinner
2021-07-26 6:07 ` [PATCH 09/10] xfs: Enforce attr3 buffer recovery order Dave Chinner
2021-07-26 7:35 ` Christoph Hellwig
2021-07-26 17:57 ` Darrick J. Wong
2021-07-26 21:52 ` Dave Chinner
2021-07-26 22:34 ` Darrick J. Wong
2021-07-26 6:07 ` [PATCH 10/10] xfs: need to see iclog flags in tracing Dave Chinner
2021-07-26 7:36 ` Christoph Hellwig
2021-07-26 17:57 ` Darrick J. Wong [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210726175730.GZ559212@magnolia \
--to=djwong@kernel.org \
--cc=david@fromorbit.com \
--cc=linux-xfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).