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: <201511240404.AFpczj7x%fengguang.wu@intel.com>
Date:	Tue, 24 Nov 2015 04:14:50 +0800
From:	kbuild test robot <lkp@...el.com>
To:	"Gabriel L. Somlo" <somlo@....edu>
Cc:	kbuild-all@...org, gregkh@...uxfoundation.org, robh+dt@...nel.org,
	pawel.moll@....com, mark.rutland@....com,
	ijc+devicetree@...lion.org.uk, galak@...eaurora.org, arnd@...db.de,
	lersek@...hat.com, ralf@...ux-mips.org,
	rmk+kernel@....linux.org.uk, eric@...olt.net,
	hanjun.guo@...aro.org, zajec5@...il.com, sudeep.holla@....com,
	agross@...eaurora.org, linux-api@...r.kernel.org,
	linux-kernel@...r.kernel.org, devicetree@...r.kernel.org,
	qemu-devel@...gnu.org, jordan.l.justen@...el.com, mst@...hat.com,
	peter.maydell@...aro.org, leif.lindholm@...aro.org,
	ard.biesheuvel@...aro.org, pbonzini@...hat.com, kraxel@...hat.com,
	luto@...capital.net, stefanha@...il.com, revol@...e.fr
Subject: Re: [PATCH v5 1/4] firmware: introduce sysfs driver for QEMU's
 fw_cfg device

Hi Gabriel,

[auto build test WARNING on v4.4-rc2]
[also build test WARNING on next-20151123]
[cannot apply to robh/for-next]

url:    https://github.com/0day-ci/linux/commits/Gabriel-L-Somlo/SysFS-driver-for-QEMU-fw_cfg-device/20151124-000402
config: arm-allyesconfig (attached as .config)
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=arm 

All warnings (new ones prefixed by >>):

   drivers/firmware/qemu_fw_cfg.c: In function 'fw_cfg_cmdline_set':
>> drivers/firmware/qemu_fw_cfg.c:510:7: warning: format '%lli' expects argument of type 'long long int *', but argument 3 has type 'phys_addr_t *' [-Wformat=]
          &ctrl_off, &data_off, &consumed);
          ^
>> drivers/firmware/qemu_fw_cfg.c:510:7: warning: format '%lli' expects argument of type 'long long int *', but argument 5 has type 'resource_size_t *' [-Wformat=]
   drivers/firmware/qemu_fw_cfg.c:510:7: warning: format '%lli' expects argument of type 'long long int *', but argument 6 has type 'resource_size_t *' [-Wformat=]
   drivers/firmware/qemu_fw_cfg.c: In function 'fw_cfg_cmdline_get':
>> drivers/firmware/qemu_fw_cfg.c:563:5: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 4 has type 'resource_size_t' [-Wformat=]
        fw_cfg_cmdline_dev->resource[0].start);
        ^
   drivers/firmware/qemu_fw_cfg.c:563:5: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 5 has type 'resource_size_t' [-Wformat=]
   drivers/firmware/qemu_fw_cfg.c:569:5: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 4 has type 'resource_size_t' [-Wformat=]
        fw_cfg_cmdline_dev->resource[2].start);
        ^
   drivers/firmware/qemu_fw_cfg.c:569:5: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 5 has type 'resource_size_t' [-Wformat=]
>> drivers/firmware/qemu_fw_cfg.c:569:5: warning: format '%llu' expects argument of type 'long long unsigned int', but argument 6 has type 'resource_size_t' [-Wformat=]
   drivers/firmware/qemu_fw_cfg.c:569:5: warning: format '%llu' expects argument of type 'long long unsigned int', but argument 7 has type 'resource_size_t' [-Wformat=]

vim +510 drivers/firmware/qemu_fw_cfg.c

   504		/* consume "<size>" portion of command line argument */
   505		size = memparse(arg, &str);
   506	
   507		/* get "@<base>[:<ctrl_off>:<data_off>]" chunks */
   508		processed = sscanf(str, "@%lli%n:%lli:%lli%n",
   509				   &base, &consumed,
 > 510				   &ctrl_off, &data_off, &consumed);
   511	
   512		/* sscanf() must process precisely 1 or 3 chunks:
   513		 * <base> is mandatory, optionally followed by <ctrl_off>
   514		 * and <data_off>;
   515		 * there must be no extra characters after the last chunk,
   516		 * so str[consumed] must be '\0'.
   517		 */
   518		if (str[consumed] ||
   519		    (processed != 1 && processed != 3))
   520			return -EINVAL;
   521	
   522		res[0].start = base;
   523		res[0].end = base + size - 1;
   524		res[0].flags = !strcmp(kp->name, "mmio") ? IORESOURCE_MEM :
   525							   IORESOURCE_IO;
   526	
   527		/* insert register offsets, if provided */
   528		if (processed > 1) {
   529			res[1].name = "ctrl";
   530			res[1].start = ctrl_off;
   531			res[1].flags = IORESOURCE_REG;
   532			res[2].name = "data";
   533			res[2].start = data_off;
   534			res[2].flags = IORESOURCE_REG;
   535		}
   536	
   537		/* "processed" happens to nicely match the number of resources
   538		 * we need to pass in to this platform device.
   539		 */
   540		fw_cfg_cmdline_dev = platform_device_register_simple("fw_cfg",
   541						PLATFORM_DEVID_NONE, res, processed);
   542		if (IS_ERR(fw_cfg_cmdline_dev))
   543			return PTR_ERR(fw_cfg_cmdline_dev);
   544	
   545		return 0;
   546	}
   547	
   548	static int fw_cfg_cmdline_get(char *buf, const struct kernel_param *kp)
   549	{
   550		/* stay silent if device was not configured via the command
   551		 * line, or if the parameter name (ioport/mmio) doesn't match
   552		 * the device setting
   553		 */
   554		if (!fw_cfg_cmdline_dev ||
   555		    (!strcmp(kp->name, "mmio") ^
   556		     (fw_cfg_cmdline_dev->resource[0].flags == IORESOURCE_MEM)))
   557			return 0;
   558	
   559		switch (fw_cfg_cmdline_dev->num_resources) {
   560		case 1:
   561			return snprintf(buf, PAGE_SIZE, "0x%llx@...llx",
   562					resource_size(&fw_cfg_cmdline_dev->resource[0]),
 > 563					fw_cfg_cmdline_dev->resource[0].start);
   564		case 3:
   565			return snprintf(buf, PAGE_SIZE, "0x%llx@...llx:%llu:%llu",
   566					resource_size(&fw_cfg_cmdline_dev->resource[0]),
   567					fw_cfg_cmdline_dev->resource[0].start,
   568					fw_cfg_cmdline_dev->resource[1].start,
 > 569					fw_cfg_cmdline_dev->resource[2].start);
   570		}
   571	
   572		/* Should never get here */

---
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/octet-stream" (53935 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ