From: "Darrick J. Wong" <djwong@kernel.org>
To: Dave Chinner <david@fromorbit.com>
Cc: linux-xfs@vger.kernel.org
Subject: Re: [PATCH 6/9] xfs: collapse xlog_state_set_callback in caller
Date: Fri, 26 Aug 2022 15:20:25 -0700 [thread overview]
Message-ID: <YwlHKbdLMOCtOslW@magnolia> (raw)
In-Reply-To: <20220809230353.3353059-7-david@fromorbit.com>
On Wed, Aug 10, 2022 at 09:03:50AM +1000, Dave Chinner wrote:
> From: Dave Chinner <dchinner@redhat.com>
>
> The function is called from a single place, and it isn't just
> setting the iclog state to XLOG_STATE_CALLBACK - it can mark iclogs
> clean, which moves tehm to states after CALLBACK. Hence the function
Nit: s/tehm/them/
> is now badly named, and should just be folded into the caller where
> the iclog completion logic makes a whole lot more sense.
>
> Signed-off-by: Dave Chinner <dchinner@redhat.com>
I had wondered what xlog_state_set_callback thought it was doing until I
looked ahead and saw this.
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
--D
> ---
> fs/xfs/xfs_log.c | 31 +++++++++++--------------------
> 1 file changed, 11 insertions(+), 20 deletions(-)
>
> diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c
> index e420591b1a8a..5b7c91a42edf 100644
> --- a/fs/xfs/xfs_log.c
> +++ b/fs/xfs/xfs_log.c
> @@ -2520,25 +2520,6 @@ xlog_get_lowest_lsn(
> return lowest_lsn;
> }
>
> -static void
> -xlog_state_set_callback(
> - struct xlog *log,
> - struct xlog_in_core *iclog,
> - xfs_lsn_t header_lsn)
> -{
> - /*
> - * If there are no callbacks on this iclog, we can mark it clean
> - * immediately and return. Otherwise we need to run the
> - * callbacks.
> - */
> - if (list_empty(&iclog->ic_callbacks)) {
> - xlog_state_clean_iclog(log, iclog);
> - return;
> - }
> - trace_xlog_iclog_callback(iclog, _RET_IP_);
> - iclog->ic_state = XLOG_STATE_CALLBACK;
> -}
> -
> /*
> * Return true if we need to stop processing, false to continue to the next
> * iclog. The caller will need to run callbacks if the iclog is returned in the
> @@ -2570,7 +2551,17 @@ xlog_state_iodone_process_iclog(
> lowest_lsn = xlog_get_lowest_lsn(log);
> if (lowest_lsn && XFS_LSN_CMP(lowest_lsn, header_lsn) < 0)
> return false;
> - xlog_state_set_callback(log, iclog, header_lsn);
> + /*
> + * If there are no callbacks on this iclog, we can mark it clean
> + * immediately and return. Otherwise we need to run the
> + * callbacks.
> + */
> + if (list_empty(&iclog->ic_callbacks)) {
> + xlog_state_clean_iclog(log, iclog);
> + return false;
> + }
> + trace_xlog_iclog_callback(iclog, _RET_IP_);
> + iclog->ic_state = XLOG_STATE_CALLBACK;
> return false;
> default:
> /*
> --
> 2.36.1
>
next prev parent reply other threads:[~2022-08-26 22:22 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-09 23:03 [PATCH 0/9 v2] xfs: byte-base grant head reservation tracking Dave Chinner
2022-08-09 23:03 ` [PATCH 1/9] xfs: move and xfs_trans_committed_bulk Dave Chinner
2022-08-10 14:17 ` kernel test robot
2022-08-10 17:08 ` kernel test robot
2022-08-22 15:03 ` Darrick J. Wong
2022-09-07 13:51 ` Christoph Hellwig
2022-08-09 23:03 ` [PATCH 2/9] xfs: AIL doesn't need manual pushing Dave Chinner
2022-08-22 17:08 ` Darrick J. Wong
2022-08-23 1:51 ` Dave Chinner
2022-08-26 15:46 ` Darrick J. Wong
2022-09-07 14:01 ` Christoph Hellwig
2023-10-12 8:44 ` Christoph Hellwig
2022-08-09 23:03 ` [PATCH 3/9] xfs: background AIL push targets physical space, not grant space Dave Chinner
2022-08-22 19:00 ` Darrick J. Wong
2022-08-23 2:01 ` Dave Chinner
2022-08-26 15:47 ` Darrick J. Wong
2022-08-26 23:49 ` Darrick J. Wong
2022-09-07 14:04 ` Christoph Hellwig
2022-08-09 23:03 ` [PATCH 4/9] xfs: ensure log tail is always up to date Dave Chinner
2022-08-23 0:33 ` Darrick J. Wong
2022-08-23 2:18 ` Dave Chinner
2022-08-26 21:39 ` Darrick J. Wong
2022-08-26 23:49 ` Darrick J. Wong
2022-09-07 14:06 ` Christoph Hellwig
2022-08-09 23:03 ` [PATCH 5/9] xfs: l_last_sync_lsn is really AIL state Dave Chinner
2022-08-26 22:19 ` Darrick J. Wong
2022-09-07 14:11 ` Christoph Hellwig
2022-08-09 23:03 ` [PATCH 6/9] xfs: collapse xlog_state_set_callback in caller Dave Chinner
2022-08-26 22:20 ` Darrick J. Wong [this message]
2022-09-07 14:12 ` Christoph Hellwig
2022-08-09 23:03 ` [PATCH 7/9] xfs: track log space pinned by the AIL Dave Chinner
2022-08-26 22:39 ` Darrick J. Wong
2022-08-09 23:03 ` [PATCH 8/9] xfs: pass the full grant head to accounting functions Dave Chinner
2022-08-26 22:25 ` Darrick J. Wong
2022-08-09 23:03 ` [PATCH 9/9] xfs: grant heads track byte counts, not LSNs Dave Chinner
2022-08-26 23:45 ` Darrick J. Wong
-- strict thread matches above, loose matches on Subject: below --
2022-12-20 23:22 [PATCH 0/9 v3] xfs: byte-based grant head reservation tracking Dave Chinner
2022-12-20 23:23 ` [PATCH 6/9] xfs: collapse xlog_state_set_callback in caller Dave Chinner
2023-09-21 1:48 [PATCH 0/9] xfs: byte-based grant head reservation tracking Dave Chinner
2023-09-21 1:48 ` [PATCH 6/9] xfs: collapse xlog_state_set_callback in caller Dave Chinner
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=YwlHKbdLMOCtOslW@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.