All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Liu <jeff.liu@oracle.com>
To: "xfs@oss.sgi.com" <xfs@oss.sgi.com>
Subject: Fwd: New Defects reported by Coverity Scan for xfsprogs
Date: Tue, 06 May 2014 17:03:52 +0800	[thread overview]
Message-ID: <5368A578.7070201@oracle.com> (raw)
In-Reply-To: <5362fbfc78ad5_2dbacf387045986@209.249.196.67.mail>

Hi Folks,

I'm not sure if someone else has also noticed the following reports from Coverity.


-------- Original Message --------
Subject: New Defects reported by Coverity Scan for xfsprogs
Date: Thu, 01 May 2014 18:59:24 -0700
From: scan-admin@coverity.com


Hi,


Please find the latest report on new defect(s) introduced to xfsprogs found with Coverity Scan.

Defect(s) Reported-by: Coverity Scan
Showing 1 of 1 defect(s)


** CID 996972:  Out-of-bounds access  (OVERRUN)
/libxfs/xfs_btree.c: 2641 in xfs_btree_new_root()


________________________________________________________________________________________________________
*** CID 996972:  Out-of-bounds access  (OVERRUN)
/libxfs/xfs_btree.c: 2641 in xfs_btree_new_root()
2635     	/* Allocate the new block. If we can't do it, we're toast. Give up. */
2636     	error = cur->bc_ops->alloc_block(cur, &rptr, &lptr, 1, stat);
2637     	if (error)
2638     		goto error0;
2639     	if (*stat == 0)
2640     		goto out0;
>>>     CID 996972:  Out-of-bounds access  (OVERRUN)
>>>     Jumping to case "XFS_BTNUM_MAX".
2641     	XFS_BTREE_STATS_INC(cur, alloc);
2642     
2643     	/* Set up the new block. */
2644     	error = xfs_btree_get_buf_block(cur, &lptr, 0, &new, &nbp);
2645     	if (error)
2646     		goto error0;


It seems like a false alarm, but maybe we can just remove the out0 label as below?

From: Jie Liu <jeff.liu@oracle.com>
Subject: xfs: get rid of out0 goto label from xfs_btree_new_root

Get rid of the useless out0 goto label and return 0 directly in case
of falling to alloate the new block.

Signed-off-by: Jie Liu <jeff.liu@oracle.com>
---
 fs/xfs/xfs_btree.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/fs/xfs/xfs_btree.c b/fs/xfs/xfs_btree.c
index 182bac2..f162dc9 100644
--- a/fs/xfs/xfs_btree.c
+++ b/fs/xfs/xfs_btree.c
@@ -2653,8 +2653,11 @@ xfs_btree_new_root(
 	error = cur->bc_ops->alloc_block(cur, &rptr, &lptr, stat);
 	if (error)
 		goto error0;
-	if (*stat == 0)
-		goto out0;
+	if (*stat == 0) {
+		XFS_BTREE_TRACE_CURSOR(cur, XBT_EXIT);
+		return 0;
+	}
+
 	XFS_BTREE_STATS_INC(cur, alloc);
 
 	/* Set up the new block. */
@@ -2743,10 +2746,6 @@ xfs_btree_new_root(
 error0:
 	XFS_BTREE_TRACE_CURSOR(cur, XBT_ERROR);
 	return error;
-out0:
-	XFS_BTREE_TRACE_CURSOR(cur, XBT_EXIT);
-	*stat = 0;
-	return 0;
 }
 
 STATIC int
-- 
1.8.3.2


Cheers,
-Jeff

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

       reply	other threads:[~2014-05-06  9:03 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <5362fbfc78ad5_2dbacf387045986@209.249.196.67.mail>
2014-05-06  9:03 ` Jeff Liu [this message]
2014-05-06  9:16   ` Fwd: New Defects reported by Coverity Scan for xfsprogs 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=5368A578.7070201@oracle.com \
    --to=jeff.liu@oracle.com \
    --cc=xfs@oss.sgi.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 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.