public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: Christoph Hellwig <hch@lst.de>
Cc: Andrey Albershteyn <aalbersh@kernel.org>,
	Hans Holmberg <hans.holmberg@wdc.com>,
	linux-xfs@vger.kernel.org
Subject: Re: [PATCH 37/45] xfs_io: correctly report RGs with internal rt dev in bmap output
Date: Wed, 9 Apr 2025 15:22:58 -0700	[thread overview]
Message-ID: <20250409222258.GU6283@frogsfrogsfrogs> (raw)
In-Reply-To: <20250409075557.3535745-38-hch@lst.de>

On Wed, Apr 09, 2025 at 09:55:40AM +0200, Christoph Hellwig wrote:
> Apply the proper offset.  Somehow this made gcc complain about
> possible overflowing abuf, so increase the size for that as well.
> 
> Signed-off-by: Christoph Hellwig <hch@lst.de>

Looks fine to me...
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>

--D

> ---
>  io/bmap.c | 23 +++++++++++++++--------
>  1 file changed, 15 insertions(+), 8 deletions(-)
> 
> diff --git a/io/bmap.c b/io/bmap.c
> index b2f6b4905285..944f658b35f0 100644
> --- a/io/bmap.c
> +++ b/io/bmap.c
> @@ -257,18 +257,21 @@ bmap_f(
>  #define	FLG_BSW		0000010	/* Not on begin of stripe width */
>  #define	FLG_ESW		0000001	/* Not on end   of stripe width */
>  		int	agno;
> -		off_t	agoff, bbperag;
> +		off_t	agoff, bbperag, bstart;
>  		int	foff_w, boff_w, aoff_w, tot_w, agno_w;
> -		char	rbuf[32], bbuf[32], abuf[32];
> +		char	rbuf[32], bbuf[32], abuf[64];
>  		int	sunit, swidth;
>  
>  		foff_w = boff_w = aoff_w = MINRANGE_WIDTH;
>  		tot_w = MINTOT_WIDTH;
>  		if (is_rt) {
> +			bstart = fsgeo.rtstart *
> +				(fsgeo.blocksize / BBSIZE);
>  			bbperag = bytes_per_rtgroup(&fsgeo) / BBSIZE;
>  			sunit = 0;
>  			swidth = 0;
>  		} else {
> +			bstart = 0;
>  			bbperag = (off_t)fsgeo.agblocks *
>  				  (off_t)fsgeo.blocksize / BBSIZE;
>  			sunit = (fsgeo.sunit * fsgeo.blocksize) / BBSIZE;
> @@ -298,9 +301,11 @@ bmap_f(
>  						map[i + 1].bmv_length - 1LL));
>  				boff_w = max(boff_w, strlen(bbuf));
>  				if (bbperag > 0) {
> -					agno = map[i + 1].bmv_block / bbperag;
> -					agoff = map[i + 1].bmv_block -
> -							(agno * bbperag);
> +					off_t bno;
> +
> +					bno = map[i + 1].bmv_block - bstart;
> +					agno = bno / bbperag;
> +					agoff = bno % bbperag;
>  					snprintf(abuf, sizeof(abuf),
>  						"(%lld..%lld)",
>  						(long long)agoff,
> @@ -387,9 +392,11 @@ bmap_f(
>  				printf("%4d: %-*s %-*s", i, foff_w, rbuf,
>  					boff_w, bbuf);
>  				if (bbperag > 0) {
> -					agno = map[i + 1].bmv_block / bbperag;
> -					agoff = map[i + 1].bmv_block -
> -							(agno * bbperag);
> +					off_t bno;
> +
> +					bno = map[i + 1].bmv_block - bstart;
> +					agno = bno / bbperag;
> +					agoff = bno % bbperag;
>  					snprintf(abuf, sizeof(abuf),
>  						"(%lld..%lld)",
>  						(long long)agoff,
> -- 
> 2.47.2
> 
> 

  reply	other threads:[~2025-04-09 22:22 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-09  7:55 xfsprogs support for zoned devices Christoph Hellwig
2025-04-09  7:55 ` [PATCH 01/45] xfs: generalize the freespace and reserved blocks handling Christoph Hellwig
2025-04-09  7:55 ` [PATCH 02/45] FIXUP: " Christoph Hellwig
2025-04-09 15:32   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 03/45] xfs: make metabtree reservations global Christoph Hellwig
2025-04-09  7:55 ` [PATCH 04/45] FIXUP: " Christoph Hellwig
2025-04-09 15:43   ` Darrick J. Wong
2025-04-10  6:00     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 05/45] xfs: reduce metafile reservations Christoph Hellwig
2025-04-09  7:55 ` [PATCH 06/45] xfs: add a rtg_blocks helper Christoph Hellwig
2025-04-09  7:55 ` [PATCH 07/45] xfs: move xfs_bmapi_reserve_delalloc to xfs_iomap.c Christoph Hellwig
2025-04-09  7:55 ` [PATCH 08/45] xfs: support XFS_BMAPI_REMAP in xfs_bmap_del_extent_delay Christoph Hellwig
2025-04-09  7:55 ` [PATCH 09/45] xfs: add a xfs_rtrmap_highest_rgbno helper Christoph Hellwig
2025-04-09  7:55 ` [PATCH 10/45] xfs: define the zoned on-disk format Christoph Hellwig
2025-04-09  7:55 ` [PATCH 11/45] FIXUP: " Christoph Hellwig
2025-04-09 15:47   ` Darrick J. Wong
2025-04-09 16:04     ` Darrick J. Wong
2025-04-10  6:01     ` Christoph Hellwig
2025-04-10 16:31       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 12/45] xfs: allow internal RT devices for zoned mode Christoph Hellwig
2025-04-09  7:55 ` [PATCH 13/45] FIXUP: " Christoph Hellwig
2025-04-09 15:55   ` Darrick J. Wong
2025-04-10  6:09     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 14/45] xfs: export zoned geometry via XFS_FSOP_GEOM Christoph Hellwig
2025-04-09  7:55 ` [PATCH 15/45] xfs: disable sb_frextents for zoned file systems Christoph Hellwig
2025-04-09  7:55 ` [PATCH 16/45] xfs: parse and validate hardware zone information Christoph Hellwig
2025-04-09  7:55 ` [PATCH 17/45] FIXUP: " Christoph Hellwig
2025-04-09 15:56   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 18/45] xfs: add the zoned space allocator Christoph Hellwig
2025-04-09  7:55 ` [PATCH 19/45] xfs: add support for zoned space reservations Christoph Hellwig
2025-04-09  7:55 ` [PATCH 20/45] FIXUP: " Christoph Hellwig
2025-04-09 15:56   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 21/45] xfs: implement zoned garbage collection Christoph Hellwig
2025-04-09  7:55 ` [PATCH 22/45] xfs: enable fsmap reporting for internal RT devices Christoph Hellwig
2025-04-09  7:55 ` [PATCH 23/45] xfs: enable the zoned RT device feature Christoph Hellwig
2025-04-09  7:55 ` [PATCH 24/45] xfs: support zone gaps Christoph Hellwig
2025-04-09  7:55 ` [PATCH 25/45] FIXUP: " Christoph Hellwig
2025-04-09 15:57   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 26/45] libfrog: report the zoned flag Christoph Hellwig
2025-04-09 15:58   ` Darrick J. Wong
2025-04-10  6:14     ` Christoph Hellwig
2025-04-10 16:36       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 27/45] xfs_repair: support repairing zoned file systems Christoph Hellwig
2025-04-09 16:10   ` Darrick J. Wong
2025-04-10  6:27     ` Christoph Hellwig
2025-04-10 16:41       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 28/45] xfs_repair: fix the RT device check in process_dinode_int Christoph Hellwig
2025-04-09 16:11   ` Darrick J. Wong
2025-04-10  6:29     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 29/45] xfs_repair: validate rt groups vs reported hardware zones Christoph Hellwig
2025-04-09 18:41   ` Darrick J. Wong
2025-04-10  6:34     ` Christoph Hellwig
2025-04-10 16:43       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 30/45] xfs_mkfs: support creating zoned file systems Christoph Hellwig
2025-04-09 18:54   ` Darrick J. Wong
2025-04-10  6:45     ` Christoph Hellwig
2025-04-10 16:45       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 31/45] xfs_mkfs: calculate zone overprovisioning when specifying size Christoph Hellwig
2025-04-09 19:06   ` Darrick J. Wong
2025-04-10  7:00     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 32/45] xfs_mkfs: default to rtinherit=1 for zoned file systems Christoph Hellwig
2025-04-09 18:59   ` Darrick J. Wong
2025-04-10  6:45     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 33/45] xfs_mkfs: reflink conflicts with zoned file systems for now Christoph Hellwig
2025-04-09 19:00   ` Darrick J. Wong
2025-04-10  6:46     ` Christoph Hellwig
2025-04-10 16:47       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 34/45] xfs_mkfs: document the new zoned options in the man page Christoph Hellwig
2025-04-09 19:00   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 35/45] libfrog: report the zoned geometry Christoph Hellwig
2025-04-09 19:01   ` Darrick J. Wong
2025-04-10  7:02     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 36/45] man: document XFS_FSOP_GEOM_FLAGS_ZONED Christoph Hellwig
2025-04-09 19:13   ` Darrick J. Wong
2025-04-10  6:53     ` Christoph Hellwig
2025-04-10 16:47       ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 37/45] xfs_io: correctly report RGs with internal rt dev in bmap output Christoph Hellwig
2025-04-09 22:22   ` Darrick J. Wong [this message]
2025-04-09  7:55 ` [PATCH 38/45] xfs_io: don't re-query fs_path information in fsmap_f Christoph Hellwig
2025-04-09 20:48   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 39/45] xfs_io: don't re-query geometry " Christoph Hellwig
2025-04-09 20:46   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 40/45] xfs_io: handle internal RT devices in fsmap output Christoph Hellwig
2025-04-09 21:48   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 41/45] xfs_spaceman: handle internal RT devices Christoph Hellwig
2025-04-09 19:29   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 42/45] xfs_scrub: support internal RT sections Christoph Hellwig
2025-04-09 19:30   ` Darrick J. Wong
2025-04-10  6:57     ` Christoph Hellwig
2025-04-09  7:55 ` [PATCH 43/45] xfs_scrub: handle internal RT devices Christoph Hellwig
2025-04-09 19:34   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 44/45] xfs_mdrestore: support " Christoph Hellwig
2025-04-09 19:36   ` Darrick J. Wong
2025-04-09  7:55 ` [PATCH 45/45] xfs_growfs: " Christoph Hellwig
2025-04-09 19:35   ` Darrick J. Wong

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=20250409222258.GU6283@frogsfrogsfrogs \
    --to=djwong@kernel.org \
    --cc=aalbersh@kernel.org \
    --cc=hans.holmberg@wdc.com \
    --cc=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