lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201806160500.jV3e5cB1%fengguang.wu@intel.com>
Date:   Sat, 16 Jun 2018 05:33:31 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Evan Green <evgreen@...omium.org>
Cc:     kbuild-all@...org, Vinayak Holikatti <vinholikatti@...il.com>,
        "James E.J. Bottomley" <jejb@...ux.vnet.ibm.com>,
        "Martin K. Petersen" <martin.petersen@...cle.com>,
        Stanislav Nijnikov <stanislav.nijnikov@....com>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Bart Van Assche <Bart.VanAssche@....com>,
        Adrian Hunter <adrian.hunter@...el.com>,
        linux-kernel@...r.kernel.org, linux-scsi@...r.kernel.org,
        Evan Green <evgreen@...omium.org>
Subject: Re: [PATCH v2 4/4] scsi: ufs: Enable writing config descriptor

Hi Evan,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on mkp-scsi/for-next]
[also build test WARNING on next-20180615]
[cannot apply to scsi/for-next v4.17]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Evan-Green/Enable-UFS-provisioning-via-Linux/20180616-050548
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: x86_64-randconfig-x016-201823 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

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 >>):

   include/linux/huge_mm.h:230:34: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/mm.h:533:24: sparse: constant 0xffffc90000000000 is so big it is unsigned long
   include/linux/mm.h:533:48: sparse: constant 0xffffc90000000000 is so big it is unsigned long
   include/linux/mm.h:624:29: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/mm.h:1098:16: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/mm.h:1796:27: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/mm.h:1888:16: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/scatterlist.h:151:25: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/scatterlist.h:236:16: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/scatterlist.h:387:16: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/scatterlist.h:387:16: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/dma-mapping.h:235:35: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/dma-mapping.h:238:33: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/highmem.h:51:16: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/blkdev.h:1721:14: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/blkdev.h:1721:14: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/blkdev.h:1723:14: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   include/linux/blkdev.h:1723:14: sparse: constant 0xffffea0000000000 is so big it is unsigned long
   drivers/scsi/ufs/ufs-sysfs.c:897:1: sparse: symbol 'dev_attr_current_power_mode' was not declared. Should it be static?
   drivers/scsi/ufs/ufs-sysfs.c:900:1: sparse: symbol 'dev_attr_bkops_status' was not declared. Should it be static?
   drivers/scsi/ufs/ufs-sysfs.c:901:1: sparse: symbol 'dev_attr_purge_status' was not declared. Should it be static?
   drivers/scsi/ufs/ufs-sysfs.c:909:1: sparse: symbol 'dev_attr_ffu_status' was not declared. Should it be static?
   drivers/scsi/ufs/ufs-sysfs.c:910:1: sparse: symbol 'dev_attr_psa_state' was not declared. Should it be static?
   drivers/scsi/ufs/ufs-sysfs.c:911:1: sparse: symbol 'dev_attr_psa_data_size' was not declared. Should it be static?
   drivers/scsi/ufs/ufs-sysfs.c: In function 'ufs_cfg_attr_store':
>> drivers/scsi/ufs/ufs-sysfs.c:296:6: warning: 'valueptr' may be used uninitialized in this function [-Wmaybe-uninitialized]
     ret = ufshcd_rw_desc_param(hba, UPIU_QUERY_OPCODE_WRITE_DESC, desc_id,
     ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        desc_index, param_offset,
        ~~~~~~~~~~~~~~~~~~~~~~~~~
        valueptr, width);
        ~~~~~~~~~~~~~~~~
   drivers/scsi/ufs/ufs-sysfs.c:269:6: note: 'valueptr' was declared here
     u8 *valueptr;
         ^~~~~~~~

vim +/valueptr +296 drivers/scsi/ufs/ufs-sysfs.c

   254	
   255	static ssize_t ufs_sysfs_write_desc_param(struct ufs_hba *hba,
   256					  enum desc_idn desc_id,
   257					  u8 desc_index,
   258					  u8 param_offset,
   259					  const char *buf,
   260					  ssize_t buf_size,
   261					  u8 width)
   262	{
   263		int ret;
   264		unsigned long long value;
   265		u8 value8;
   266		__be16 value16;
   267		__be32 value32;
   268		__be64 value64;
   269		u8 *valueptr;
   270	
   271		if (kstrtoull(buf, 0, &value))
   272			return -EINVAL;
   273	
   274		switch (width) {
   275		case 1:
   276			value8 = (u8)value;
   277			valueptr = &value8;
   278			break;
   279	
   280		case 2:
   281			value16 = cpu_to_be16(value);
   282			valueptr = (u8 *)&value16;
   283			break;
   284	
   285		case 4:
   286			value32 = cpu_to_be32(value);
   287			valueptr = (u8 *)&value32;
   288			break;
   289	
   290		case 8:
   291			value64 = cpu_to_be64(value);
   292			valueptr = (u8 *)&value64;
   293			break;
   294		}
   295	
 > 296		ret = ufshcd_rw_desc_param(hba, UPIU_QUERY_OPCODE_WRITE_DESC, desc_id,
   297					desc_index, param_offset,
   298					valueptr, width);
   299		if (ret)
   300			return -EINVAL;
   301	
   302		return buf_size;
   303	}
   304	

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

Download attachment ".config.gz" of type "application/gzip" (28553 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ