public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@lst.de>
To: linux-xfs@vger.kernel.org
Subject: [PATCH 13/17] xfs: return an offset instead of a pointer from xlog_align
Date: Mon, 20 May 2019 18:13:43 +0200	[thread overview]
Message-ID: <20190520161347.3044-14-hch@lst.de> (raw)
In-Reply-To: <20190520161347.3044-1-hch@lst.de>

This simplifies both the helper and the callers.  We lost a bit of
size sanity checking, but that is already covered by KASAN if needed.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 fs/xfs/xfs_log_recover.c | 16 +++++-----------
 1 file changed, 5 insertions(+), 11 deletions(-)

diff --git a/fs/xfs/xfs_log_recover.c b/fs/xfs/xfs_log_recover.c
index 39e4f774d355..9519956b1ccf 100644
--- a/fs/xfs/xfs_log_recover.c
+++ b/fs/xfs/xfs_log_recover.c
@@ -151,20 +151,14 @@ xlog_put_bp(
  * Return the address of the start of the given block number's data
  * in a log buffer.  The buffer covers a log sector-aligned region.
  */
-STATIC char *
+static inline unsigned int
 xlog_align(
 	struct xlog	*log,
-	xfs_daddr_t	blk_no,
-	int		nbblks,
-	struct xfs_buf	*bp)
+	xfs_daddr_t	blk_no)
 {
-	xfs_daddr_t	offset = blk_no & ((xfs_daddr_t)log->l_sectBBsize - 1);
-
-	ASSERT(offset + nbblks <= bp->b_length);
-	return bp->b_addr + BBTOB(offset);
+	return BBTOB(blk_no & ((xfs_daddr_t)log->l_sectBBsize - 1));
 }
 
-
 /*
  * nbblks should be uint, but oh well.  Just want to catch that 32-bit length.
  */
@@ -216,7 +210,7 @@ xlog_bread(
 	if (error)
 		return error;
 
-	*offset = xlog_align(log, blk_no, nbblks, bp);
+	*offset = bp->b_addr + xlog_align(log, blk_no);
 	return 0;
 }
 
@@ -1713,7 +1707,7 @@ xlog_write_log_records(
 
 		}
 
-		offset = xlog_align(log, start_block, endcount, bp);
+		offset = bp->b_addr + xlog_align(log, start_block);
 		for (; j < endcount; j++) {
 			xlog_add_record(log, offset, cycle, i+j,
 					tail_cycle, tail_block);
-- 
2.20.1

  parent reply	other threads:[~2019-05-20 16:15 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-20 16:13 use bios directly in the log code Christoph Hellwig
2019-05-20 16:13 ` [PATCH 01/17] xfs: remove the no-op spinlock_destroy stub Christoph Hellwig
2019-05-20 16:13 ` [PATCH 02/17] xfs: remove the never used _XBF_COMPOUND flag Christoph Hellwig
2019-05-20 16:13 ` [PATCH 03/17] xfs: renumber XBF_WRITE_FAIL Christoph Hellwig
2019-05-20 16:13 ` [PATCH 04/17] xfs: reformat xlog_get_lowest_lsn Christoph Hellwig
2019-05-20 16:13 ` [PATCH 05/17] xfs: don't use REQ_PREFLUSH for split log writes Christoph Hellwig
2019-05-20 16:13 ` [PATCH 06/17] xfs: factor out log buffer writing Christoph Hellwig
2019-05-20 16:13 ` [PATCH 07/17] xfs: factor out splitting of an iclog from xlog_sync Christoph Hellwig
2019-05-20 16:13 ` [PATCH 08/17] xfs: split iclog size calculation out of xlog_sync Christoph Hellwig
2019-05-20 16:13 ` [PATCH 09/17] xfs: update both state counters together in xlog_sync Christoph Hellwig
2019-05-20 16:13 ` [PATCH 10/17] xfs: remove the syncing argument from xlog_verify_iclog Christoph Hellwig
2019-05-20 16:13 ` [PATCH 11/17] xfs: make use of the l_targ field in struct xlog Christoph Hellwig
2019-05-20 16:13 ` [PATCH 12/17] xfs: use bios directly to write log buffers Christoph Hellwig
2019-05-20 16:13 ` Christoph Hellwig [this message]
2019-05-20 16:13 ` [PATCH 14/17] xfs: use bios directly to read and write the log recovery buffers Christoph Hellwig
2019-05-20 23:32   ` Dave Chinner
2019-05-21  5:09     ` Christoph Hellwig
2019-05-21 22:24       ` Dave Chinner
2019-05-22  5:12         ` Christoph Hellwig
2019-05-22  6:19           ` Dave Chinner
2019-05-22 17:31             ` Christoph Hellwig
2019-05-22 23:28               ` Dave Chinner
2019-05-23  6:22                 ` Christoph Hellwig
2019-05-20 16:13 ` [PATCH 15/17] xfs: remove unused buffer cache APIs Christoph Hellwig
2019-05-20 16:13 ` [PATCH 16/17] xfs: properly type the b_log_item field in struct xfs_buf Christoph Hellwig
2019-05-20 16:13 ` [PATCH 17/17] xfs: remove the b_io_length " Christoph Hellwig

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=20190520161347.3044-14-hch@lst.de \
    --to=hch@lst.de \
    --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