public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: Brian Foster <bfoster@redhat.com>
Cc: Chandan Babu R <chandanrlinux@gmail.com>,
	linux-xfs@vger.kernel.org, allison.henderson@oracle.com,
	kernel test robot <lkp@intel.com>
Subject: Re: [PATCH] xfs: Fix 'set but not used' warning in xfs_bmap_compute_alignments()
Date: Fri, 29 Jan 2021 09:08:36 -0800	[thread overview]
Message-ID: <20210129170836.GG7695@magnolia> (raw)
In-Reply-To: <20210129124638.GA2660974@bfoster>

On Fri, Jan 29, 2021 at 07:46:38AM -0500, Brian Foster wrote:
> On Fri, Jan 29, 2021 at 01:10:00PM +0530, Chandan Babu R wrote:
> > On 28 Jan 2021 at 23:14, Darrick J. Wong wrote:
> > > On Thu, Jan 28, 2021 at 10:34:12AM -0500, Brian Foster wrote:
> > >> On Wed, Jan 27, 2021 at 02:35:37PM +0530, Chandan Babu R wrote:
> > >> > With both CONFIG_XFS_DEBUG and CONFIG_XFS_WARN disabled, the only reference to
> > >> > local variable "error" in xfs_bmap_compute_alignments() gets eliminated during
> > >> > pre-processing stage of the compilation process. This causes the compiler to
> > >> > generate a "set but not used" warning.
> > >> >
> > >> > Reported-by: kernel test robot <lkp@intel.com>
> > >> > Signed-off-by: Chandan Babu R <chandanrlinux@gmail.com>
> > >> > ---
> > >> > This patch is applicable on top of current xfs-linux/for-next branch.
> > >> >
> > >> >  fs/xfs/libxfs/xfs_bmap.c | 9 ++++-----
> > >> >  1 file changed, 4 insertions(+), 5 deletions(-)
> > >> >
> > >> > diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c
> > >> > index 2cd24bb06040..ba56554e8c05 100644
> > >> > --- a/fs/xfs/libxfs/xfs_bmap.c
> > >> > +++ b/fs/xfs/libxfs/xfs_bmap.c
> > >> > @@ -3471,7 +3471,6 @@ xfs_bmap_compute_alignments(
> > >> >  	struct xfs_mount	*mp = args->mp;
> > >> >  	xfs_extlen_t		align = 0; /* minimum allocation alignment */
> > >> >  	int			stripe_align = 0;
> > >> > -	int			error;
> > >> >
> > >> >  	/* stripe alignment for allocation is determined by mount parameters */
> > >> >  	if (mp->m_swidth && (mp->m_flags & XFS_MOUNT_SWALLOC))
> > >> > @@ -3484,10 +3483,10 @@ xfs_bmap_compute_alignments(
> > >> >  	else if (ap->datatype & XFS_ALLOC_USERDATA)
> > >> >  		align = xfs_get_extsz_hint(ap->ip);
> > >> >  	if (align) {
> > >> > -		error = xfs_bmap_extsize_align(mp, &ap->got, &ap->prev,
> > >> > -						align, 0, ap->eof, 0, ap->conv,
> > >> > -						&ap->offset, &ap->length);
> > >> > -		ASSERT(!error);
> > >> > +		if (xfs_bmap_extsize_align(mp, &ap->got, &ap->prev,
> > >> > +			align, 0, ap->eof, 0, ap->conv, &ap->offset,
> > >> > +			&ap->length))
> > >> > +			ASSERT(0);
> > >>
> > >> I was wondering if we should just make xfs_bmap_extsize_align() return
> > >> void and push the asserts down into the function itself, but it looks
> > >> like xfs_bmap_rtalloc() actually handles the error. Any idea on why we
> > >> might have that inconsistency?
> > >
> > > It only returns nonzero if isrt (the fifth parameter) is nonzero, and
> > > only if the requested range is still not aligned to the rt extent size
> > > after aligning it and eliminating any overlaps with existing extents.
> > >
> > 
> > Adding to what Darrick has mentioned above ...
> > 
> > Space on realtime devices are tracked at a granularity of "rextsize"
> > bytes. Each bit held in the data blocks of xfs_mount->m_rbmip represents usage
> > status of a single rextsized block. Most likely this seems to be underlying
> > reason for strict allocation alignment requirements for realtime files.
> > 
> 
> Ah, I see. Could you fix the indentation/alignment of the call so it
> looks something like the following?
> 
> 		if (xfs_bmap_extsize_align(mp, &ap->got, &ap->prev, align, 0,
> 					   ap->eof, 0, ap->conv, &ap->offset,
> 					   &ap->length))
> 			ASSERT(0);
> 
> Otherwise the patch seems fine to me.

Yeah, I'll fix it in my tree before I push out for-next again.

--D

> Brian
> 
> > --
> > chandan
> > 
> 

      parent reply	other threads:[~2021-01-29 17:09 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-27  9:05 [PATCH] xfs: Fix 'set but not used' warning in xfs_bmap_compute_alignments() Chandan Babu R
2021-01-28 15:34 ` Brian Foster
2021-01-28 17:44   ` Darrick J. Wong
2021-01-29  7:40     ` Chandan Babu R
     [not found]       ` <20210129124638.GA2660974@bfoster>
2021-01-29 17:08         ` 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=20210129170836.GG7695@magnolia \
    --to=djwong@kernel.org \
    --cc=allison.henderson@oracle.com \
    --cc=bfoster@redhat.com \
    --cc=chandanrlinux@gmail.com \
    --cc=linux-xfs@vger.kernel.org \
    --cc=lkp@intel.com \
    /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