linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Mahoney <jeffm@suse.com>
To: Dan Carpenter <dan.carpenter@oracle.com>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [bug report] btrfs: root->fs_info cleanup, add fs_info convenience variables
Date: Thu, 22 Dec 2016 09:18:40 -0500	[thread overview]
Message-ID: <1cfa2654-79c0-348b-d17c-f21bbb700a56@suse.com> (raw)
In-Reply-To: <20161222125304.GA16117@elgon.mountain>


[-- Attachment #1.1: Type: text/plain, Size: 1469 bytes --]

On 12/22/16 7:53 AM, Dan Carpenter wrote:
> Hello Jeff Mahoney,
> 
> This is a semi-automatic email about new static checker warnings.

Hi Dan -

Thanks for the report.  We've already seen this one and the right fix is
to remove the checks in btrfs_get_name since exportfs won't pass
negative dentries.  The original reporter has submitted a patch for that.

-Jeff

> The patch 0b246afa62b0: "btrfs: root->fs_info cleanup, add fs_info 
> convenience variables" from Jun 22, 2016, leads to the following 
> Smatch complaint:
> 
> fs/btrfs/export.c:238 btrfs_get_name()
> 	 warn: variable dereferenced before check 'inode' (see line 226)
> 
> fs/btrfs/export.c
>    225		struct inode *dir = d_inode(parent);
>    226		struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
>                                                          ^^^^^^^^^^^
> Patch adds dereference.
> 
>    227		struct btrfs_path *path;
>    228		struct btrfs_root *root = BTRFS_I(dir)->root;
>    229		struct btrfs_inode_ref *iref;
>    230		struct btrfs_root_ref *rref;
>    231		struct extent_buffer *leaf;
>    232		unsigned long name_ptr;
>    233		struct btrfs_key key;
>    234		int name_len;
>    235		int ret;
>    236		u64 ino;
>    237	
>    238		if (!dir || !inode)
>                              ^^^^^
> Old code checked for NULL.
> 
>    239			return -EINVAL;
>    240	
> 
> regards,
> dan carpenter
> 


-- 
Jeff Mahoney
SUSE Labs


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 827 bytes --]

  reply	other threads:[~2016-12-22 14:18 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-22 12:53 [bug report] btrfs: root->fs_info cleanup, add fs_info convenience variables Dan Carpenter
2016-12-22 14:18 ` Jeff Mahoney [this message]
  -- strict thread matches above, loose matches on Subject: below --
2016-07-08 16:40 Dan Carpenter

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=1cfa2654-79c0-348b-d17c-f21bbb700a56@suse.com \
    --to=jeffm@suse.com \
    --cc=dan.carpenter@oracle.com \
    --cc=linux-btrfs@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;
as well as URLs for NNTP newsgroup(s).