[miklos-vfs:readlink 8/11] fs/proc/namespaces.c:93:9: warning: 'res' may be used uninitialized in this function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git readlink
head:   aec1408b51975ee937ae79994bd3807c55ec09ca
commit: 68177fb03256addf021583df6324a032662c7904 [8/11] vfs: convert ->readlink to same signature as ->get_link
config: i386-randconfig-r0-201649 (attached as .config)
compiler: gcc-5 (Debian 5.4.1-2) 5.4.1 20160904
reproduce:
        git checkout 68177fb03256addf021583df6324a032662c7904
        # save the attached .config to linux build tree
        make ARCH=i386 

Note: it may well be a FALSE warning. FWIW you are at least aware of it now.
http://gcc.gnu.org/wiki/Better_Uninitialized_Warnings

All warnings (new ones prefixed by >>):

   fs/proc/namespaces.c: In function 'proc_ns_readlink':
>> fs/proc/namespaces.c:93:9: warning: 'res' may be used uninitialized in this function [-Wmaybe-uninitialized]
     return res;
            ^

vim +/res +93 fs/proc/namespaces.c

68177fb0 Miklos Szeredi    2016-12-09   77  
68177fb0 Miklos Szeredi    2016-12-09   78  		res = ERR_PTR(-ENOMEM);
68177fb0 Miklos Szeredi    2016-12-09   79  		if (!name)
68177fb0 Miklos Szeredi    2016-12-09   80  			goto out_put;
68177fb0 Miklos Szeredi    2016-12-09   81  
68177fb0 Miklos Szeredi    2016-12-09   82  		err = ns_get_name(name, PROC_NS_LINK_MAX, task, ns_ops);
68177fb0 Miklos Szeredi    2016-12-09   83  		if (err < 0) {
68177fb0 Miklos Szeredi    2016-12-09   84  			kfree(name);
68177fb0 Miklos Szeredi    2016-12-09   85  			res = ERR_PTR(err);
68177fb0 Miklos Szeredi    2016-12-09   86  			goto out_put;
68177fb0 Miklos Szeredi    2016-12-09   87  		}
68177fb0 Miklos Szeredi    2016-12-09   88  		set_delayed_call(done, kfree_link, name);
68177fb0 Miklos Szeredi    2016-12-09   89  		res = name;
e149ed2b Al Viro           2014-11-01   90  	}
68177fb0 Miklos Szeredi    2016-12-09   91  out_put:
bf056bfa Eric W. Biederman 2011-06-18   92  	put_task_struct(task);
5d826c84 Al Viro           2014-03-14  @93  	return res;
bf056bfa Eric W. Biederman 2011-06-18   94  }
bf056bfa Eric W. Biederman 2011-06-18   95  
bf056bfa Eric W. Biederman 2011-06-18   96  static const struct inode_operations proc_ns_link_inode_operations = {
bf056bfa Eric W. Biederman 2011-06-18   97  	.readlink	= proc_ns_readlink,
6b255391 Al Viro           2015-11-17   98  	.get_link	= proc_ns_get_link,
bf056bfa Eric W. Biederman 2011-06-18   99  	.setattr	= proc_setattr,
bf056bfa Eric W. Biederman 2011-06-18  100  };
bf056bfa Eric W. Biederman 2011-06-18  101  

:::::: The code at line 93 was first introduced by commit
:::::: 5d826c847b34de6415b4f1becd88a57ff619af50 new helper: readlink_copy()

:::::: TO: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
:::::: CC: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Filesystems Devel]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux